Typeof 与 类型转换
# Typeof 与 类型转换
typeof(value) || typeof value 能够返回我们传入数据的类型 typeof能够返回给我们六种类型
- number
- string
- boolean
- object
- function
- undefined
# 类型转换
被运算符包裹的
转换为数字的 Number true -- 1 false -- 0 “1“ -- 1 null -- 0 undefined -- NaN
parseInt 转换成整形数据 parseInt 第二个参数是将 对应进制得数字转换成 10进制
toString 将10进制得数字转换成对应进制
# 隐式类型转换
- isNaN() 调用了 Number
- ++、+/-(正负) Number
- "+" (加号:两边有一个字符串就会把另一个也变成字符串 String)
- *、%、/、- Number
- &&、||、! Boolean
- </>/<=/>=
- == 、 !=
# == 判断
==
在判断之前会进行隐式得类型转换。 即类型不同,但是值相同,等式成立
- 字符串与数字比较 --> 会将字符串类型转为数字类型比对
- 其他类型与布尔类型 --> 会将布尔类型转换为数字类型
null
和undefined
-->null == undefined 为真
null === undefined 为假
- 对象与非对象比较 --> 按照 toPrmitive 规则先将对象转换为基本类型得数据在比较
- NaN 不等于任何数,包括他自己。
如果使用typeof 打印未定义的变量,是不报错的且返回 undefined typeof(typeof a) --》 “string”