-1
var count=0 ;
for(var x=0; x<data_len; x++)
{
     count = count + num_arr[x];
}
// alert(count);

count = 35210 である 3+5+2 と 1 である 1+0 を追加したい場合。

4

3 に答える 3

0

文字列に変換count:

var count = 352;
count += ''; // makes a string : "352"
while (count.length > 1) {
    count = Function('return ' + count.split('').join('+') + ';')() + '';
}

この部分 :

Function('return ' + count.split('').join('+') + ';')

連続して与える:

function () { return 3+5+2; }
function () { return 1+0; }
于 2014-03-04T06:34:06.120 に答える
0

数値ではなく、文字列の配列があります。次の方法で数値に変換できます。

count = count + +num_arr[x];

2 番目+は単項プラス演算子で、数値にキャストさnum_arr[x]れます。

数値がすべて整数の場合は、次を使用できます。

count = count + parseInt(num_arr[x], 10);

または(フロートがある場合):

count = count + parseFloat(num_arr[x]);
于 2013-08-11T16:30:26.223 に答える
0
function sumParts(x) {
    var sumX = 0;
    var strX = x.toString();
    var arrX = strX.split("");
    for (a = 0; a < arrX.length; a++) {
        sumX += parseInt(arrX[a], 10);
    };
    return sumX;
}
y = sumParts(count);
z = sumParts(y);
// y = 10; (3 + 5 + 2)
// z = 1; (1 + 0)

そして、私は(テストされていない)、戻り値が に変更された場合return sumParts(sumX)、それが1桁の整数になるまで続くと信じています。

于 2013-08-11T16:38:23.260 に答える