>> {} + [] 0
Итак, EmptyObject + EmptyArray оценивается как 0
. (Отказ от ответственности: я не совсем понимаю, почему это так.) Хорошо, теперь я хочу присвоить этому 0
переменной! Кажется довольно легким:
>> var a = {} + []; undefined >> a "[object Object]"
Ну, может быть, не так просто. Гуглс немного... Ага! {}
в этом контексте на самом деле является блоком кода, а не пустым. Поэтому lemme делает его больше похожим на кодовый блок:
>> var a = { } + []; undefined >> a "[object Object]"
... Данг. Примечание для себя: JavaScript игнорирует пробелы.
Можно ли каким-либо образом присвоить переменную {} + []
(или аналогичную), но все равно, чтобы {} + []
оценил значение 0
?