在javascript中用相同的索引替换数组元素
我有一个类似的数组在javascript中用相同的索引替换数组元素,javascript,Javascript,我有一个类似的数组 var myArray = new Array; 我必须将一些元素推送到数组中,以便用相同的索引替换这些元素 Example : myArray.push(1); myArray.push(2); myArray.push(3); 所以现在 myArray[0] = 1 myArray[1] = 2 现在,当我按下元素3时 myArray[0]将替换为3,myArray[1]将替换为1,元素2将被删除 它将根据推送的元素数量继续 任何人都能帮我满足这个要求吗…push
var myArray = new Array;
我必须将一些元素推送到数组中,以便用相同的索引替换这些元素
Example :
myArray.push(1);
myArray.push(2);
myArray.push(3);
所以现在
myArray[0] = 1
myArray[1] = 2
现在,当我按下元素3
时
myArray[0]
将替换为3
,myArray[1]
将替换为1
,元素2
将被删除
它将根据推送的元素数量继续
任何人都能帮我满足这个要求吗…push
添加到数组的末尾。如果要向数组的开头添加值,可以使用
然后可以使用pop
删除最后一个元素:
arr.pop();
但是,考虑到需要从添加的数组中删除相同数量的元素,您可能需要的是一个使用concat
和slice
的函数:
function pusher(arr, add) {
return add.concat(arr).slice(0, arr.length);
}
var arr = [1, 2, 3, 4];
var arr = pusher(arr, [5, 6]); // [5, 6, 1, 2]
我想你需要的是:
myArray.unshift(element);
myArray.pop();
说明:
- 取消移动:在位置0上插入元素,并将所有其他元素向右移动一个位置
- 从数组中删除最后一个元素
你能解释一下你想要实现什么吗?可能的答案是:类似的堆栈,所以我假设2是数组的最大长度,我错了吗?我给你做了一点提示:
myArray.unshift(element);
myArray.pop();