gpt4 book ai didi

JavaScript JSON 数组编号不一致

转载 作者:行者123 更新时间:2023-11-30 05:36:42 25 4
gpt4 key购买 nike

我有 JSON,其中包含每个键的数组。大多数时候,当我访问一个带前导零的数字时,它会将数字作为整数返回。 (这是我所期望的。)

当我尝试访问 0400 到 0577(含)之间的数字时,它返回一个似乎与 256 相关的数字。

谁能帮我理解为什么这个范围内的数字会出现这种情况?

var priceList = {
"1":['Product 1',0400, 1375,0200],
"2":['Product 2',0425, 0599,0200],
"3":['Product 3',0399, 0579,0200] }

alert(priceList[1][1]); // I expect it to alert 400 -- Actual Alert: 256
alert(priceList[2][1]); // I expect it to alert 420 -- Actual alert: 277
alert(priceList[3][1]); // I expect it to alert 399 -- Actual alert: 399

最佳答案

在 javascript 中,以您使用它们的方式使用时,带前导零的数字被认为是不正确的。有不同类型的数字,例如二进制、十进制、八进制和十六进制。

JavaScript 认为前导零表示一个八进制整数,因此它尝试将它们转换为八进制数。

如果你输入:

"1":['Product 1',Number("0400"), 1375,0200] 

它将按预期输出 400

关于JavaScript JSON 数组编号不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23283193/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com