JavaScript梗图详解
- 前几天我看到了一张JavaScript的梗图,虽然看完之后哈哈大笑,但是有些东西我并不知道为啥是这样,只是知道了有这么一件事,但是不知道其中的原理,所以我今天来开坑把这个图上的JavaScript知识点整理一下
开坑一时爽,填坑火葬场,看我这个坑要多久才能填上 (2020/05/12开坑)
截至发送事件 (2020/06/29) 这个坑我才填上,我的拖延症没救了吧
1. typeof NaN == “number”
-
NaN 是一种特殊的 number 类型,所以 typeof 之后求得的是 number 类型。
-
NaN 的意思是说明这个值不是数字,例如我们在把字母转换成整数或者浮点数时,他返回的值就是 NaN。NaN 与任何值都不相等,与他自己也不相等
-
所以在判断某个值不是数字的时候不能使用
==NaN
,这样的话无论他是不是数字都返回 false ,这里应该使用isNaN()
函数来判断他是否是 NaN 值 -
另外附上其他类型的 typeof 返回值
- undefined:undefined
- null:object
- string:string
- number:number
- boolean:boolean
- function:function
- object:object
typeof 另一个有意思的题
- 在查找 nan 的资料的时候正好看到这个题,也是十分有意思的题
- 原帖里的凯斯的答案已经解释的相当清晰了,感谢凯斯的讲解!
- 下面我只是简单复述一下他的答案,感兴趣的可以去原帖仔细了解
typeof 1/0; //NaN(这个NaN不是字符串类型,是数值类型)
typeof typeof 1/0; //NaN(这个NaN不是字符串类型,是数值类型)
typeof(1/0); //"number"
typeof typeof(1/0)