console.log(0700/100) // result: 4.48
console.log(0900/100) // result: 9
我正在通过创建一个计算器应用程序来学习vue,并且正在使用数组来存储变量。当我在实际操作数之前输入0进行测试时,我对上述行为感到困惑。
答案 0 :(得分:2)
由于0700
以零开头,因此JS将其视为八进制(以8为底的数字)。 0900
不能为八进制,因此JS会将其视为常规的十进制(以10为底)数字。
0700 octal = 448 decimal
,所以0700 (octal) / 100 (decimal) = 4.48
答案 1 :(得分:1)
当您在数字前放置0时,js会将其强制转换为八进制,等于448。但是0900包含9,因此它不能为八进制,因此将等于900。