如何将一个数组的值设置为另一个数组?

时间:2012-12-04 19:36:42

标签: javascript arrays loops equality

  

可能重复:
  Copying array by value in javascript

我是javascript的初学者,所以我非常感谢任何帮助或建议。我正在尝试使用我的输入数组(由用户在文档中放入表单)来获取我收集的值,以将它们设置为单词数组。所以,我想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]);
}

1 个答案:

答案 0 :(得分:4)

而不是这一行:

inputs[i].value = words;

您可以使用:

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

这会将提供的值添加到words数组中。请参阅MDN docs

@pimvdb @Shmiddty 指出您也可以使用以下内容。这与使用push完全相同:

words[i] = inputs[i].value;