Про сложение массивов

Сегодня рассмотрим очередную задачку.

Что выведет консоль?

 
1 + [[] + []] - [] + [[] - []] - 1

 

Решение.

Так как при сложении пустой массив преобразуется в пустую строку, а пустая строка при сложении с числом превращает то в строку, то мы получаем:

‘1’ — [] +  [[] — []] — 1

При вычитании пустой массив преобразуется в ноль, а ‘1’ — 0 = 1, следовательно:

1 +  [[] — []] — 1

Два пустых массива при вычитании дадут 0, так как сначала каждый преобразуется в строку, а затем пустая строка при вычитании в 0:

1 +  [0] — 1

Далее массив преобразуется в ‘0’, так как у нас сложение, то к числу приводить не нужно:

1 +  ‘0’ — 1

Получится:

’10’ — 1

При вычитании происходит преобразование к числам, значит ответ 9.

Хотите быть в курсе новых статей?