0

重複の可能性:
javascript で配列を値でコピーする

私はJavaScriptの初心者なので、助けやアドバイスをいただければ幸いです。入力配列で収集した値 (ユーザーによってドキュメント内のフォームに入れられた値) を取得して、words 配列に設定しようとしています。などを希望します。単語を空の配列に設定し、入力のインデックス値と等しくすることで、これを達成できるinputs[0] = words[0]inputs[1] = words[1]思いましたが、機能していません。単語が「未定義」として表示され続けます。

function goMad() { 
    var words = [];
    var inputs = document.getElementsByTagName("input"); 
    for (var i = 0; i < inputs.length - 1; i++) { 
        inputs[i].value = words;
    }

    var story = words[0] + "! he said " + words[1] + " as he jumped into his convertible " + words[2] + " and drove off with his " + words[3] + " wife.";
    document.getElementById("story").innerHTML = story;

    console.log(words[0]);
}
4

1 に答える 1

4

この行の代わりに:

inputs[i].value = words;

以下を使用できます。

words.push(inputs[i].value);

wordsこれにより、提供された値が配列に追加されます。MDN ドキュメントを参照してください。

@pimvdbと@Shmiddtyが指摘しているように、次のものも使用できますこれは、以下を使用した場合とまったく同じように動作しますpush

words[i] = inputs[i].value;
于 2012-12-04T19:39:01.020 に答える