为什么Javascript将0111 number参数更改为73

为什么Javascript将0111 number参数更改为73,javascript,Javascript,我想这与二进制数有关,但我无法找到任何解释,很可能是因为我不知道搜索什么。我有以下代码。我传入一个数字参数0111,在函数体中记录数字73。我只是想知道为什么。链接资源和解释会很好。谢谢 function whatTheHecksGoingOn(num) { console.log(num) } whatTheHecksGoingOn(0111); JavaScript中以0开头的数字文字被解释为八进制表示法。0111的八进制等于73。它是八进制,而不是十六进制0x是十六进制前缀已更

我想这与二进制数有关,但我无法找到任何解释,很可能是因为我不知道搜索什么。我有以下代码。我传入一个数字参数0111,在函数体中记录数字73。我只是想知道为什么。链接资源和解释会很好。谢谢

function whatTheHecksGoingOn(num) {
    console.log(num)
}

whatTheHecksGoingOn(0111);

JavaScript中以
0
开头的数字文字被解释为八进制表示法。0111的八进制等于73。

它是八进制,而不是十六进制
0x
是十六进制前缀已更正,mb。我在问题结束前发布了这个答案,呜呜。