想知道为什么null检测出来会是false,他不是一个字符串吗?

想知道为什么null检测出来会是false,他不是一个字符串吗?

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>数据类型之NaN</title>
</head>
<body>
    <script>
//补充代码
var a=null,b=10,c="我是字符串",d="10",e=undefined,f=64243672.213;
console.log(isNaN(a))
console.log(isNaN(b))
console.log(isNaN(c))
console.log(isNaN(d))
console.log(isNaN(e))
console.log(isNaN(f))
</script>
</body>
</html>
javascritp.html:11 false
javascritp.html:12 false
javascritp.html:13 true
javascritp.html:14 false
javascritp.html:15 true
javascritp.html:16 false


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
卡布琦诺 2018-01-01 18:55:53

null方法先尝试转为数值再判断,null转为数值是0,所以结果是false

慕虎8092331 2017-12-31 19:25:12

我也不懂这个


  • 额,您是对楼下助教的回复仍有什么疑问么?
    2017-12-31 20:03:59
  • 而null既不是数值也不是字符串,它就表示一个空对象。 返回的结果应该是true啊,为什么是false
    2018-01-01 10:42:20
怎么都被占用了呢 2017-11-19 15:03:13

isNaN() 函数是用于判断传入参数是否是 NaN,NaN表示一个非法的数字(比如被 0 除后得到的结果)。

而null既不是数值也不是字符串,它就表示一个空对象。


怎么都被占用了呢 2017-11-19 12:19:17

null当然不是字符串了。你可以使用typeof判断一下null的类型

  • 提问者 qq_陌_45 #1
    null类型是object, 这是什么意思啊? isNaN不是检测非数值吗,显示false的话,就是object不是一个非数值,那他是数值吗?或者说不是数值也不是非数值
    2017-11-19 13:24:14
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师