undefined 与 null 的区别是:
- null是一个表示为“空”的对象,转为数值时为0; undefined 是一个表示“此处无定义” 的原始值,转为数值时为NaN
- 空数组([])和空对象({})对应的布尔值,都是true
- 在Javascript内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。所以 1 === 1.0(true)
由于浮点数不是精确的值,所以涉及小数的比较和运算要特别小心
0.1 + 0.2 === 0.3 (false) -
NaN
是 javascript的特殊值,表示“非数字” ; NaN不是独立的数据类型,而是一个特殊数值,数据类型是Number;
NaN 不等于任何值,包括它本身。NaN === NaN(false)
NaN 与任何数的运算,得到的都是NaN -
parseInt
parseInt 方法用于将字符串转为整数。 头部有空格会自动去除
如果参数不是字符串,则会先转成字符串再转换。字符串转为整数的时候,是一个个字符一次转换,如果遇到不能转为数字的字符,就不进行下去了,返回已经转好的部分。如果字符串的第一个字符不能转化为数字(后面跟着数字的正负号除外),返回NaN。
所以注意,parseInt 的返回值只有两种可能: 要么是个十进制的整数,要么是NaN
parseInt(0.0000008) ( 8 ) 等同于 parseInt( 8e-7) (8) -
parseFloat
parseFloat 方法用于将一个字符串转为浮点数。
网友评论