I Shar

I Shar

мир глазами веб-разработчика

JavaScript: сумма двух пустых массивов

какой результат даст сумма двух пустых массивов

I Shar

время чтения 1 мин.

Photo by Romina BM on Unsplash

Итак, нам нужно сложить в JavaScript два пустых массива [] + []. Будет ли равен полученный результат false?

Чтобы дать верный ответ, прежде всего, необходимо понять, как в JavaScript работает преобразование типов.

Когда мы складываем между собой два пустых массива с помощью оператора +, в первую очередь происходит преобразование каждого массива в строку, после чего полученные строки объединяются (конкатенируются).

Пустой массив [] в результате преобразования дает пустую строку. Несложно догадаться, что суммой пустых строк будет пустая строка.

Теперь, необходимо определиться: будет ли пустая строка равна false?

Если мы используем для сравнения оператор нестрогого равенства == происходит следующее: сначала каждое значение приводится к числу. Таким образом, и пустая строка и false будут преобразованы в 0. После этого происходит сравнение значений, а это означает, что наше равенство будет верным:

console.log([] + [] == false);
// результат: true

Но, если необходимо осуществить строгое сравнение суммы двух пустых массивов и логического значения false, равенство будет неверным, така как оператор строгого равенства === проверяет выражение без приведения типов, а значения, используемые в сравнении в данном случае разных типов (строка и false):

console.log([] + [] === false);
// результат: false


Спасибо за внимание.

    • frontend
    • js

Новые публикации

Далее

Категории

О нас

Frontend & Backend. Статьи, обзоры, заметки, код, уроки.