если я хочу проверить результат выражения, и функция вернет NaN , как бы я это проверить?
примеры: $('amount').value.toInt()!='NaN'
^не работает, и я предполагаю, что возвращаемое значение не является строкой,
$('amount').value.toInt()!=NaN
^не кажется, работают либо, и это одна кажется очевидным
так как я проверить погоду возвращаемого значения не число?Что такое зарезервированное ключевое слово для NaN в javascript?
ответ
Значение NaN определяется как не равное всем, включая его. Проверьте, соответствует ли значение NaN с функцией isNaN()
, соответственно. (ECMAScript 6 добавляет функцию Number.isNan()
с различной семантикой для аргументов, отличных от числа, но пока не поддерживается во всех браузерах по состоянию на 2015 год).
Есть два встроенных свойства, доступных со значением NaN: глобальное свойство NaN
(т. Е. window.NaN
в браузерах) и Number.NaN
. Это не ключевое слово на языке. В старых браузерах свойство NaN
может быть перезаписано с потенциально запутанными результатами, но с ECMAScript 5 standard it was made non-writable.
- Как указано в комментариях в комментарии, существует также глобальная функция isFinite(), которая может быть полезна.
спасибо большое :) действительно помогло +20rep для вас – lock
@lock, это 10 для голосования и 15 для принятия, так что это 25 (если в последнее время ничего не изменилось). А вот еще 10, @Miles. – paxdiablo
ohw Извините, неверные математики, еще раз спасибо очень полезному сообществу разработчиков – lock
Оператор равенства (== и ===) не может использоваться для проверки значения против NaN. Вместо этого используйте Number.isNaN() или isNaN().
NaN === NaN; // false
Number.NaN === NaN; // false
isNaN(NaN); // true
isNaN(Number.NaN); // true
лучший способ проверить результат числовой операции против NaN является ПОДХОД таким образом, пример:
var x = 0;
var y = 0;
var result = x/y; // we know that result will be NaN value
// to test if result holds a NaN value we should use the following code :
if(result !=result){
console.log('this is an NaN value');
}
и это сделано.
хитрость заключается в том, что NaN не может быть по сравнению с любым другим значением, даже с ним самостоятельно (NaN! = NaN всегда верно, поэтому мы можем воспользоваться этим и сравнить результат с собой)
это JavaScript (хороший и причудливый язык)
- 1. Javascript пакет, зарезервированное ключевое слово
- 2. Что такое ключевое слово 'char'?
- 3. Что использовать для java1.8 "_" зарезервированное ключевое слово
- 4. Зарезервированное ключевое слово в vb.net?
- 5. Что такое ключевое слово `name` в JavaScript?
- 6. что такое ключевое слово в javascript?
- 7. javascript 'with' зарезервированное слово
- 8. Является ли зарезервированное ключевое слово?
- 9. Использовать зарезервированное ключевое слово для случая enum
- 10. Что такое зарезервированное слово Fortran/переменная ACCY?
- 11. Что такое ключевое слово 'auto'?
- 12. сдержанное зарезервированное ключевое слово сбрасывает ошибку. Зачем?
- 13. Что такое ключевое слово volatile?
- 14. Что такое ключевое слово final?
- 15. Зарезервированное ключевое слово в перечислении в C#
- 16. ли префикс зарезервированное ключевое слово в MySQL
- 17. Что такое ключевое слово C# для проверки?
- 18. Что такое ключевое слово `finally` для PHP?
- 19. Как использовать зарезервированное ключевое слово в запросе
- 20. Что такое явное ключевое слово для C++?
- 21. «Del» зарезервированное ключевое слово в Powershell?
- 22. Что такое ключевое слово «лицензия», используемое в python?
- 23. Javascript использовать зарезервированное ключевое слово в качестве ключевой
- 24. Что такое ключевое слово в linq?
- 25. Что такое ключевое слово MAP в SQL?
- 26. Что такое TopSectionListener в этом ключевое слово?
- 27. что такое ключевое слово «как» в swift
- 28. Что такое ключевое слово 'alias' в PowerShell?
- 29. Название таблицы Hive теперь зарезервированное ключевое слово
- 30. Что такое ключевое слово App_Path в vb.net?
Он подбрасывает неопределенные обычно для любого сумасшествия. –