在Javascript中使用001作为数字是否与1相同?

在Javascript中使用001作为数字是否与1相同?,javascript,Javascript,编辑:这是另一个问题的重复。为了了解为什么在数字前加0会产生不同的值,这个问题与八进制无关,在另一个问题中,在数字前加0会产生不同的(八进制)值的意义价值不明显 为了使代码对齐看起来更好,我格式化了将整数作为参数的行数,从1,2,3,。。至01,02,03 这两种语言在JavaScript中是否无法区分?(请不要将01与“01”误认为它们是不同的类型。有人知道任何编程语言中的任何示例,其中1和01的值不相同吗?)。对于此示例-是 但像这样的0实际上是八进制符号 01==1。 但是011实际上是9

编辑:这是另一个问题的重复。为了了解为什么在数字前加0会产生不同的值,这个问题与八进制无关,在另一个问题中,在数字前加0会产生不同的(八进制)值的意义价值不明显

为了使代码对齐看起来更好,我格式化了将整数作为参数的行数,从1,2,3,。。至01,02,03


这两种语言在JavaScript中是否无法区分?(请不要将01与“01”误认为它们是不同的类型。有人知道任何编程语言中的任何示例,其中1和01的值不相同吗?)。

对于此示例-是

但像这样的0实际上是八进制符号

01
==
1
。 但是
011
实际上是
9


基本上-您不想这样做。

对于本例-是

但像这样的0实际上是八进制符号

01
==
1
。 但是
011
实际上是
9


基本上-您不想这样做。

01和001很好,但要注意010。可能重复的-这突出显示您将在
严格模式下得到警告。
01和001很好,但要注意010。可能的重复-这突出显示了在
严格模式下你会得到一个警告
。它们当然没有意义-但出于某种原因,javascript很高兴假设你在这些情况下是指base 10:/这可能是人们认为这确实有效的主要原因之一…我会把它放在那里。现在我的评论缺乏上下文:/Heh。这里有一个不同的评论。根据,octal在
严格
模式下不受支持:“一致性实现在处理时,不得扩展NumericLiteral的语法以包括OctalIntegerLiteral,如中所述。”有趣。这就意味着它们是平直的轴八进制?有趣。我想我不能说我在javascript中使用了octal,但我肯定这会惹恼某些人……解析器显然非常宽松,但语言规范非常明确,在任何情况下,
08
09
都不会是合法的文本,而且,在
严格的
模式下,唯一可以以
0
开头的整数文本是
0
本身或十六进制文本,它们必须以
0x
0x
开头。它们当然没有意义——但出于某种原因,javascript很乐意假设您在这些情况下指的是base 10:/这可能是人们认为这确实有效的主要原因之一……我会把它放在那里。现在我的评论缺乏上下文:/Heh。这里有一个不同的评论。根据,octal在
严格
模式下不受支持:“一致性实现在处理时,不得扩展NumericLiteral的语法以包括OctalIntegerLiteral,如中所述。”有趣。这就意味着它们是平直的轴八进制?有趣。我想我不能说我在javascript中使用了octal,但我肯定这会惹恼某些人……解析器显然非常宽松,但语言规范非常明确,在任何情况下,
08
09
都不会是合法的文本,而且,在
严格的
模式下,唯一可以以
0
开头的整数文本是
0
本身或十六进制文本,它们必须以
0x
0x
开头。