不能吃辣的兔子 2016-11-03 13:09 采纳率: 0%
浏览 3522

在js里面3+undefined为什么等于Nan?

3+null=3
但是3+undefined=NaN

ps:这是一道面试题,没答上来。回去查了下null和undefined的区别,
知道了null是obj,而undeinde只是一个全局对象的特殊属性;但是我还是不明白。这两个转成boolean都是false,为什么做相同的运算却得出不同的结果?

  • 写回答

6条回答 默认 最新

  • 全栈极简 领域专家: 后端开发技术领域 2016-11-03 13:59
    关注

    我个人理解,isNaN(undefined)是true,也就是NaN,所以3+NaN=NaN。而isNaN(null)为false,即null为数字,当做0处理,所以3+null=3.

    评论

报告相同问题?