Готовлюсь к собесу. И хочу понять почему
(false == []) === true, и в тоже время
(false == Boolean([])) === false.
Как такое явление можно объяснить?
Я понимаю, что в первом случае для массива будет вызван ToPrimitive(),
а затем вроде должен отработать valueOf().
Возможно я не прав, но похоже, что этот метод вернет значение length, который равен 0, что в свою очередь является falsy значением, так что-ли?
==, всегда обходился===. – MoloF May 23 '21 at 11:20