Неужели тут что-то может быть неправильно? Что будет выведено на экран?
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Так же, как и в
предыдущем тесте, мы имеем дело с преобразованием типов
и нестрогим сравнением
используя оператор ==
.
Когда JavaScript вычисляет выражение true + true
, он сначала преобразовывает оба значение в числа, и только после этого складывает их. Для переменных логического типа правила такие: true
становится единицей, а false
- нулем.
Когда мы пытаемся выполнить сравнение 2 == true
, то приведение типов в JavaScript возникает снова и мы получаем выражение 2 == 1
.
Ответ, очевидно, false
и мы идем в ветку else
.
Чтобы понять, как приведение типов работает с оператором +
и разными типами данных, советую тебе прочесть
эту заметку.
ОТВЕТ: на экран будет выведена строка everyone is different after all
.