为了账号安全,请及时绑定邮箱和手机立即绑定

js 中的 isNaN([1]) 为什么返回false

js 中的 isNaN([1]) 为什么返回false

紫衣仙女 2019-04-16 20:26:15
传入长度为1的数组时isNaN([1]);//false但是isNaN([1,2]);//true还有NaN===NaN//false好神奇啊。
查看完整描述

2 回答

?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

NaN!==NaN是可以理解的,毕竟4/'error'也不该等于5/'error'。
isNaN([1])为false,是因为isNaN接受的是数字类型,于是[1]被自动转换为了数字类型再传递给isNaN,而转换结果是1。不信你可以看到Number([1])是1。
而你可以看到Number([1,2])的结果是NaN,于是isNaN([1,2])自然是true了。
                            
查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 384 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信