为什么console.log(0123);记录83?

时间:2016-10-11 04:42:08

标签: javascript console console.log

为什么console.log(0123);会记录整数。 83?我不确定为什么会这样,也不确实有任何想法。

2 个答案:

答案 0 :(得分:4)

因为它被解释为八进制数,而八进制123对应于十进制83(64 + 16 + 3)。

来自MDN

  

在整数文字上引导0(零),或引导0o(或0O)   表示它是八进制的。八进制整数只能包含数字   0-7。

答案 1 :(得分:0)

因为整数上的前导0(零)0o或0O表示八进制数!!

八进制编号系统现在使用较少,几乎已作为数字基数系统消失。十六进制编号系统现在非常流行!