gpt4 book ai didi

javascript - 拼接数组中的值并将拼接后的值推送到另一个数组中

转载 作者:行者123 更新时间:2023-11-28 13:01:58 25 4
gpt4 key购买 nike

你好,这是我的问题。我有一个任务,我需要从数组中删除元素并将它们插入另一个数组,然后返回删除元素的数组。例如,在这种情况下,我必须删除所有 0 值,并将它们插入“a”数组,然后返回包含 0 值的“a”数组。我使用 splice 方法和循环从数组中删除了 0 个值,但我真的不知道如何将删除的元素推送到“a”数组中,我尝试使用推送方法,但我不适合我。希望大家能帮助我。谢谢大家。

function moveZeros(array) {
var a = [];
for (var i = array.length - 1; i--;) {
if (array[i] == "0") {
array.splice(i, 1);
}

}

return a;
}

moveZeros([1, 2, 0, 1, 0, 1, 0, 3, 0, 1]);

最佳答案

Array.splice() 返回已删除元素的数组,您可以使用 Array.concat() 将它们添加到 a > 数组。

注释:

  1. i 初始化为 array.length,不带 -1,因为条件 i--在执行循环体之前检查。
  2. 由于数组是从头到尾迭代的,因此将 a 连接到删除的元素保持原始顺序。

function moveZeros(array) {
var a = [];
for (var i = array.length; i--;) {
if (array[i] === 0) {
a = array.splice(i, 1).concat(a);
}

}

return a;
}

var result = moveZeros([1, 2, 0, 1, 0, 1, 0, 3, 0, 1, 0]); // I've added a last 0 to the array to show that all items were removed
console.log(result);

关于javascript - 拼接数组中的值并将拼接后的值推送到另一个数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49581071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com