0

目前我收到带有对象的 JSON。每个对象有 4 个字符串,其中包含 3 个数字。我需要从这些数字中构造一个大数。例如,如果数字是“111”、“222”、“333”和“444”,则数字应该是 1112222333444。因为我需要 ===1112222333444 为真,所以我不能直接进行字符串连接,因为结果不会是整数。将此 JSON 转换为仅包含连接整数的数字的最快选择是什么?如果前 5-6 位数字为零,我也想忽略它们。

4

2 回答 2

3

您可以将它们连接起来,然后将它们转换为数字

Number("111" + "222" + "333" + "444") === 111222333444  // true

或更短

+("111" + "222" + "333" + "444") === 111222333444  // true

如果某些组为零,这甚至可以工作,因为 Number 或“+”只是将 String 解释为数字并且不进行任何解析(与 parseInt 相反,如果没有给出基数,它将解析“010”为 8,因为它将带前导零的数字解释为八进制。还有一些其他差异)

于 2013-05-10T12:50:36.153 回答
1
var str = str1 + str2 + str3 + str4;
var result = Number(str);

这样您就可以将字符串解析为数字类型。它还丢弃前导零。

于 2013-05-10T12:47:34.400 回答