前端面试 100+typeoof undefined输出问题

typeof是判断数据类型的一种方式

typeof可以判断基本数据类型和undefined。引用数据类型和null的判断都是Object。

这道题转化为

100+ undefined 输出什么?

结果是 NaN

回答这道题我们需要了解一个知识点 数据转换

数据的类型转换:将某个数据的类型通过某种方式转换为另一种数据类型! 比如: number 转换成 string

数据转换通过方式不同可以分为:强制转换、隐式转换

强制转换:人为的通过手段去改变一个数据的类型

隐式转换:没有人为的参与,是程序解析自动进行转换

这里我们讲一下强制转换的一种方式

Number()函数

该函数可以将其他的数据类型强制转换为Number类型的数据

//   Undefined ==> Number
 console.log(Number(undefined), typeof Number(undefined))//NaN 'number'

在加法运算中

如果+号的一侧数据类型为字符串类型,则+号就自动变成字符的拼接

console.log(100 + null)//100
console.log(100 + undefined)  // 100 + Number(undefined) ==>  100 + NaN  = NaN

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值