783 B
783 B
Если с одной стороны -- объект, а с другой -- нет, то сначала приводится объект.
В данном случае сравнение означает численное приведение. У массивов нет valueOf
, поэтому вызывается toString
, который возвращает список элементов через запятую.
В данном случае, элемент только один - он и возвращается. Так что ['x']
становится 'x'
. Получилось 'x' == 'x'
, верно.
P.S. По той же причине верны равенства:
//+ run
alert( ['x','y'] == 'x,y' ); // true
alert( [] == '' ); // true