javascript 不接受任何数字前加0

javascript does not accept 0 before any number

var value = 05000;
var addValue = 1;

如果我计算 value + addvalue,那么它计算的值是错误的

 var result = value + addValue;// it's return value is 20481

快速观看结果见下图

但是如果我把值赋给5000(值前没有0),那么它计算正确。为什么?

0 放在数字前使其成为 octal 数字文字。因此以 8 为基数进行解释。

因此 - 不要在数字前放置前导零。很明显doesn't do what you intend.

如果您 运行 您在 strict mode 中的代码,您会得到一个错误:

Uncaught SyntaxError: Octal literals are not allowed in strict mode.