Сообщение от maxmaster
|
Что вас удивило?
Знак "==" обозначает неявное сравнение, а это значит что типы элементов слева и справа должны быть неявно преобразованы. [10] - это элемент массива, он не может быть преобразован в число или строку и преобразуется в true. Правая часть тоже должна быть преобразована в булев тип, поскольку сравнивать можно только одинаковые типы. Известно что 0 или "" - это false, все остальные значения, отличные от нуля, отрицательных чисел или пустой строки - это true. Итог true == true? Ну конечно true!
|
Вы написали бред.
Цитата:
|
[10] - это элемент массива, он не может быть преобразован в число или строку
|
alert([1,2].toString());
alert([1] + 2);
alert(Number([1]) + 2);
В общем курите мат часть.