在js中与其它的值不同,NaN不能通过相等操作符(== 和 ===)来判断 ,因为NaN == NaN和NaN === NaN都会返回 false。 因此,判断一个值是不是NaN是有必要的。
1、NaN值的产生
Number(undefined) // NaN Number('undefined') // NaN Number('string') // NaN Number({}) // NaN Number('10,3') // NaN Number('asd321') // NaN Number(new Date().toString()) // NaN
2、isNaN()的问题
isNaN(NaN); // true
isNaN(undefined); // true
isNaN('undefined')// true
isNaN({}); // true
isNaN(true); // false
isNaN(null); // false
isNaN(37); // false
//strings
isNaN("37"); // false: 可以被转换成数值37
isNaN("37.37"); // false: 可以被转换成数值37.37
isNaN("37,5"); // true
isNaN('123ABC'); // true: parseInt("123ABC")的结果是 123, 但是Number("123ABC")结果是 NaN
isNaN(""); // false: 空字符串被转换成0
isNaN(" "); // false: 包含空格的字符串被转换成0
//dates
isNaN(new Date()); // false
isNaN(new Date().toString()); // true
isNaN("imooc") // true: "blabla"不能转换成数值
// 转换成数值失败, 返回NaN
3、Number.isNaN()详情
Number.isNaN(NaN); // true
Number.isNaN(Number.NaN); // true
Number.isNaN(0 / 0) // true
// 下面这几个如果使用全局的 isNaN() 时,会返回 true。
Number.isNaN("NaN"); // false,字符串 "NaN" 不会被隐式转换成数字 NaN。
Number.isNaN(undefined); // false
Number.isNaN('undefined');// false
Number.isNaN({}); // false
Number.isNaN("blabla"); // false
Number.isNaN(true); // false
Number.isNaN(null); // false
Number.isNaN(37); // false
Number.isNaN("37"); // false
Number.isNaN("37.37"); // false
Number.isNaN(""); // false
Number.isNaN(" "); // false
上面是“es6语法中关于Number.isNaN()的运用方法”的全面内容,想了解更多关于 js 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_2564.html
workflows工作流
一个穿过泥泞雷区的士兵ComfyUI工作流
一个冰淇淋ComfyUI工作流
森林里一只邪恶的树妖ComfyUI工作流
stvmccrr风格的玫瑰花ComfyUI工作流
一个港口配备了小型船只、起重机、集装箱和码头
停在音乐节露营地的一辆复古大众巴士由羊毛制成
一幅3D农场游戏画面ComfyUI工作流
一个浑身皮毛看起来像丘巴卡的3d动漫人物
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

js实现table表格动态新增行和列表
canvas黑洞漩涡(canvas+js)
利用css3做一个动态loading效果
3D彩色卡片
一个包含老黄历、佛历、道历、星宿等数据的日历网站
3d文字动画效果
在线生成金属文字









