0

現時点では、オブジェクトを含む JSON を受け取ります。各オブジェクトには、3 つの数字を含む 4 つの文字列があります。それらの数字から大きな数を構築する必要があります。たとえば、数字が「111」、「222」、「333」、および「444」の場合、数値は 1112222333444 である必要があります。===1112222333444 が true になる必要があるため、結果が整数にはなりません。この 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 に解析します。先行ゼロの数値を 8 進数として解釈します。他にもいくつかの違いがあります)。

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

このようにして、文字列を数値型に解析します。また、先頭のゼロも破棄します。

于 2013-05-10T12:47:34.400 に答える