когда мне показалось, что я что-то понял о преобразовании типов в JavaScript, я наткнулся на это:
+[]; // 0
Number([]); // 0
Моя первая мысль заключалась в том, что я должен получить NaN, точно так же, как если бы я попытался преобразовать пустой объект в число:
+{}; // NaN
Number({}); // NaN
Я искал об этом некоторое время без каких-либо успехов...
Может кто-нибудь объяснить мне, почему он преобразуется в 0, а не в NaN?
Является ли это стандартным поведением?
Спасибо.