0
Я нашел некоторые странные вещи о Javascript. Например, когда я запускаю в узле Shell (просто набрав узел), есть некоторые утверждения, которые я не понимаю.Тип Javascript. Попытка понять, как это работает под капотом
> [] + []
'' (because [] is converted to an empty string ?)
> {} + []
0 (why 0 ?)
> x = ['10', '10', '10'] (this is ok)
['10', '10', '10']
> x.map(parseInt)
[ 10, NaN, 2 ] (really weird)
Я хотел бы знать, как Javascript работает под капотом, чтобы понять, почему я получаю эти результаты (особенно последний)
последний пример вы упоминается в документации MDN для 'карты()' в разделе «Tricky использование Case»: https://developer.mozilla.org/en-US/docs/ Web/JavaScript/Reference/Global_Objects/Array/map. Таким образом, проблема возникает из необязательных параметров функции. – httpNick
Спецификация ECMAScript - это место для поиска, если вы хотите знать, как все работает. Прямо сейчас, это накопление часто задаваемых вопросов. –