Number类型
最基本的数值字面量格式是十进制整数,十进制整数可以向下面那样直接在代码中输入
var intNum=55;
除了十进制表示外,还可以通过八进制和十六进制来表示。其中,八进制字面值得第一位必须是0,然后是八进制数字序列(0~7)。如果后接的字面值超出范围,则前面的导零失效,后面的值将被当做十进制数值解析。
var a=065; //八进制的53
var b=085; //85
var c=08; //8
alert(a);
alert(b);
alert(c);
八进制字面量在严格模式下是无效的,会导致支持该模式的JavaScript引擎抛出错误。
十六进制字面值的前两位必须是0x,后跟任何十六进制数字(0-9及A-F)。字母可以大小写。
var a=0xA;
var b=0x1f;
console.log(a);//十六进制的10
console.log(b);//十六进制31
在进行算术计算时,所有以八进制和十六进制表示的数值最终会被转换成十进制数值。
- 浮点数值
浮点数值就是指该数值中必须包含一个小数点,并且小数点后面必须至少有一位数字。虽然小数点前面可以没有整数但不推荐。
var floatNum1=1.2;
var floatNum2=0.2;
var floatNum3=.2;
console.log(floatNum1);//1.2
console.log(floatNum2);//0.2
console.log(floatNum3);//0.2 虽然小数点前面可以没有整数但不推荐
由于保存浮点数值需要的内存空间是保存整数数值的两倍,所以ES会将浮点数值转换为整数值。如果小数点后面没有跟任何数字,会解析成整数保存。如果浮点数值本身表示的就是一个整数,那么该数值就会被转换为整数。