Почему isNaN('-10') ложно?
Просто любопытно, почему это ложь? я подумал
isNaN('-10')
должно быть правдой, но
isNaN(-10)
должно быть ложным?
Пытается ли Javascript преобразовать строки в числа перед применением
isNaN
?
2 ответа
Решение
Из MDN:
Начиная с самых ранних версий спецификации функции isNaN, ее поведение для нечисловых аргументов сбивало с толку. Когда аргумент функции isNaN не относится к типу Number, значение сначала приводится к Number. Полученное значение затем проверяется, чтобы определить, является ли оно NaN.