JavaScript 运算符++

JavaScript operator ++

我有这个 js 代码,我不明白为什么最后一个数字是 12,为什么它从 8 开始计数。为什么它不是从 10 开始到 14 结束?

<html>
<body>
<script type="text/javascript">
var k;
for (k=010; k<015; k++)
{
document.write(" "+k);
document.write("<br>");
}
</script>
</body>
</html>

数字开头的 0 会导致语言将它们解释为以 8 ("octal") 为基数的值。 010801513

如果您从号码中删除前导 0 个字符,它将起作用。

使用前导 0 表示八进制可以追溯到(至少)C。