JS数值之间的转换
Number(), parseInt(),parseFloat()
Number()函数的转换规则如下:
1.如果boolean值,true和false将分别被转换为1和0
2.如果是数字值,只是简单的传入和返回
3.如果是null值,返回0
4.如果是undefined,返回NaN
因此,这儿可以考察Number()方法对null,undefined转化返回的结果是什么?
参考地址-《JavaScript高级程序设计》笔记:基本概念(三)
JS中最大的Number是多少?
浮点数范围:as large as ±1.7976931348623157 × 10的308次方
as small as ±5 × 10的−324次方
精确整数范围:The JavaScript number format allows you to exactly represent all integers between
−9007199254740992 and 9007199254740992 (即正负2的53次方)
即可使用Math.pow(2,53)得到结果;
数组索引还有位操作:正负2的31次方
JS == 与 === 的区别
1、对于string
,number
等基础类型,==
和===
是有区别的
1)不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等,===如果类型不同,其结果就是不等
2)同类型比较,直接进行“值”比较,两者结果一样
2、对于Array
,Object
等高级类型,==
和===
是没有区别的
进行“指针地址”比较
3、基础类型与高级类型,==和===是有区别的
1)对于==,将高级转化为基础类型,进行“值”比较
2)因为类型不同,===结果为false