我正在动手Node.js,我发现它非常令人兴奋。但是,当我尝试使用变量时,我得到了奇怪的结果。当01234分配给变量时,668显示为响应,当分配0123时,返回83作为响应。我没理解逻辑。我正在附上这个screengrab。
我在c#中检查了同样的结果,得到了预期的结果。 node.js中发生了什么?
答案 0 :(得分:2)
在javascript中,从0 0 0
1 1 0.15
2 2 0.3
1 3 0.45
1 4 0.6
1 5 0.75
6 6 0.9
7 7 1.05
8 8 1.2
9 9 1.35
10 10 1.5
11 11 1.65
12 12 1.8
13 13 1.95
14 14 2.1
15 15 2.25
16 16 2.4
17 17 2.55
18 18 2.7
19 19 2.85
开始表示此号码位于0
octal
答案 1 :(得分:2)
八进制数字由ASCII数字0后跟一个或多个组成 ASCII数字0到7穿插着下划线,并且可以 表示正整数,零整数或负整数。
所以012
是一个八进制数字,这就是为什么它等于小数中的10
。
一个好的解决方案是解析它。
parseInt("012");