9

私は次のような配列を持っていますvar arr = { 30,80,20,100 };

そして今、上記の配列を反復し、反復された個々の値を 1 つの関数 return ステートメントに追加したいと考えています。

function iterate()
{
    return "Hours" + arr[i];
}

私は次のアプローチで試しました

function m()
{
    for(var i in arr)
    {
        s = arr[i];
    }
    document.write(s);
}

上記のコードは、1 つの値、つまり配列内の最後の値のみを返します。しかし、私はすべての値を繰り返したい

30---for first Iteration
80---for second Iteraton

Any help will be appreciated
4

2 に答える 2

2

ステートメントではなく length プロパティを使用して反復しfor ... in、ループ内から配列値を書き込みます。

for (var ii = 0, len = arr.length; ii < len; ii++) {
  document.write(arr[ii]);
}
于 2012-05-22T15:56:45.870 に答える
1

これは、書き込みステートメントがループの外にあるためです。こうなりたくないですか?

function m(arr) {
    for (var i = 0; i < arr.length; i++) {
        s = arr[i];
        document.write(s);
    }

}​

また、配列のすべてのプロパティが得られるため、in を使用しないでください。使用するarray.length

于 2012-05-22T15:56:43.713 に答える