gpt4 book ai didi

javascript - 如何使用 splice 和 slice 将一个数组放入另一个数组

转载 作者:行者123 更新时间:2023-11-30 19:13:45 26 4
gpt4 key购买 nike

我的问题是关于该程序的输出:在 FCC (freecodecamp) 控制台中我看到 4,3,2,1,5,而在节点控制台中我看到 [ 4, 3, 2, 1, 5 ](其他数组同理)

我也在第 8 行尝试了这个:let result = array2Copy.map(i => i.toString());

function frankenSplice(arr1, arr2, n) {
let array2Copy = arr2.slice(0);

for (let i = 0; i < arr1.length; i++){
array2Copy.splice(n, 0, arr1[i]);
}
let result = array2Copy;

return array2Copy;
}

console.log(frankenSplice([1, 2, 3], [4, 5], 1));-->4,3,2,1,5
console.log(frankenSplice([1, 2], ["a", "b"], 1));-->a,2,1,b

根据FCC控制台,我需要如下输出:[4, 1, 2, 3, 5]

最佳答案

首先要记住splice的参数是:

  • (1) 应添加/删除项目的索引
  • (2) 要删除的项目数
  • (3), (4), (5), ...(可选)要添加的项目

你需要将一个数组插入到另一个数组中,所以你只需要一个拼接:插入项目的索引是参数n,而你不需要' 想要删除任何项目,所以第二个参数应该是 0,然后指定要添加 的项目,只是散布到 拼接的其余部分 参数列表:

function frankenSplice(arr1, arr2, n) {
// don't mutate the argument
const newArr = arr2.slice();
newArr.splice(n, 0, ...arr1);
return newArr;
}

console.log(frankenSplice([1, 2, 3], [4, 5], 1)); //-->4,3,2,1,5
console.log(frankenSplice([1, 2], ["a", "b"], 1)); //-->a,2,1,b

关于javascript - 如何使用 splice 和 slice 将一个数组放入另一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58209968/

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