当一个数字具有前导零时会发生什么?

时间:2013-04-01 18:00:37

标签: javascript

我今天一直试图调试问题,最后我发现了问题所在。出于某种原因,当一个数字具有前导零时,JavaScript会做一些非常奇怪的事情。

示例:

alert(132);
alert(0132);

var test = 0132;
alert(test);

JSFiddle:http://jsfiddle.net/U8sFu/3/

第一个弹出窗口显示“132”,第二个弹出窗口显示“90”,第三个弹出窗口显示“90”。

我的问题是,为什么数字0132成为数字90?这对我来说真是莫名其妙!

1 个答案:

答案 0 :(得分:6)

带前导0的数字被解析为octal literal,位于基数为8。