JavaScript实验:数值表示

JavaScript中所有的数都是浮点数,对于这些数,可以用10进制来表示,也可以用16进制来表示。在JavaScript中,所有以0x或者0X开头的数都是16进制数。比如,0xff就是一个16进制数,表示10进制数中的255。

有些JavaScript解释器支持8进制的数值表示:所有以0开头(但不以0x或0X开头)的数都是8进制数。比如017就是一个8进制数,表示10进制下的15。由于浏览器兼容性问题,在JavaScript程序编写过程中不应该使用这种8进制数值表示。事实上,在ECMAScript标准中,严格模式下(strict mode),8进制数值表示是被禁止的。

除了普通的数值表示,JavaScript还支持科学计数法;表示规则为: [digits][.digits][(E|e)[(+|-)]digits]

实验

在下面的例子中,10进制数255以不同的16进制数和科学计数法进行表示,互相之间是等价的:

var a = 255;  
var b1 = 0xff;  
var b2 = 0Xff;  
var c1 = 2.55e2;  
var c2 = 2.55E2;  
console.log(a === b1);//return true  
console.log(a === b2);//return true  
console.log(a === c1);//return true  
console.log(a === c2);//return true  

本文实验代码: http://jsfiddle.net/cshao/KRdhL/2/

Chuan Shao

Read more posts by this author.

Shanghai

Subscribe to Chuan's blog

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!