Javascript在特定索引处向Array附加元素

时间:2010-11-24 16:49:42

标签: javascript arrays

我有一个动态生成的数组:

myArr = ["val0a", "val1a", "val2a"... "val600a"]

我在循环中将新数组值附加到此数组时遇到问题。追加后,我的数组应如下所示:

myArr = ["val0a", "val1a val1b", "val2a val2b"... "val600a"]

请注意,新阵列和旧阵列的长度不同。

我该怎么做?它必须是简单的东西,但我无法理解。

4 个答案:

答案 0 :(得分:6)

您可以按照以下方式编写函数:

Array.prototype.appendStringToElementAtIndex = function(index, str) {
    if(typeof this[index] === 'undefined' || typeof this[index] !== 'string') return false;
    this[index] += ' ' + str;
};


myArr = ["val0a", "val1a", "val2a"];
myArr.appendStringToElementAtIndex(1, "val1b");

console.log(myArr.join(', ')); //val0a, val1a val1b, val2a

答案 1 :(得分:0)

myArr.push(myArr[myArr.length - 1].split(" ").push("val42").join(" "));  // even

答案 2 :(得分:0)

将值附加到数组的元素,您可以执行此操作:

myArr = ["val0a", "val1a", "val2a"... "val600a"];
indexToAppendTo = 2;
val2 = "val2b"
myArr[ indexToAppendTo ] += (" " + val2) ;

答案 3 :(得分:-1)

连接到一个字符串的元素:

myArr[2] = myArr[2] += 'blah';

重新分配:

myArr[2] = 'foo';