Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将数组粘贴到其他数组中?_Javascript_Arrays - Fatal编程技术网

Javascript 如何将数组粘贴到其他数组中?

Javascript 如何将数组粘贴到其他数组中?,javascript,arrays,Javascript,Arrays,我有两个阵列: var str = ['a','b','c','d']; var num = [1,2,3]; 我想要一个这样的数组: var strNum= ['a','b',1,2,3,'c','d']; 有方法吗?一种方法是使用拼接方法str.splice(索引,0,项目)将在指定索引处插入项到str(首先删除0项,即,这只是插入) splice()方法通过删除现有元素和/或添加新元素来更改数组的内容 查看更多信息: 请试试这个: var str=['a','b','c','d'];

我有两个阵列:

var str = ['a','b','c','d'];
var num = [1,2,3];
我想要一个这样的数组:

var strNum= ['a','b',1,2,3,'c','d'];

有方法吗?

一种方法是使用
拼接方法<代码>str.splice(索引,0,项目)
将在指定索引处插入
str
(首先删除0项,即,这只是插入)

splice()方法通过删除现有元素和/或添加新元素来更改数组的内容

查看更多信息:

请试试这个:

var str=['a','b','c','d'];
var num=[1,2,3];
对于(i在num.reverse()中){
str.splice(2,0,num[i]);
}
console.log(str)您可以使用

splice()
方法通过删除现有元素和/或添加新元素来更改数组的内容

apply()
方法使用给定的
this
值和作为数组(或数组)提供的
参数调用函数

var str=['a','b','c','d'],
num=[1,2,3],
strNum=str.slice();
Array.prototype.splice.apply(strNum[2,0].concat(num));

控制台日志(strNum)您可能正在查找以下内容:

var str = ['a','b','c','d'];
var num = [1,2,3];

var startAt = 2;
num.forEach((number, ind)=>{
    str.splice(startAt+ind, 0, number);
});

console.log(str);

改变现有值几乎总是一个坏主意。将您需要的东西集中在一起:

var str=['a','b','c','d'];
var num=[1,2,3];
var,其中=2;
var result=[].concat(
str.slice(0,其中),
号码,
str.slice(其中));

console.log(result)
您可以使用
slice
方法将
str
数组拆分为2:插入点之前的部分和插入点之后的部分:

var before = str.slice(0,2);
var after = str.slice(2);
然后,您可以使用
concat
方法创建
strNum
数组,将
前面的
num
后面的
数组连接成一个数组:

var strNum = before.concat(num).concat(after);
var str=['a','b','c','d'];
var num=[1,2,3];
var before=str.slice(0,2);
之后的var=str.slice(2);
var strNum=before.concat(num).concat(after);

控制台日志(strNum)你总是希望数字正好在中间吗?如果顺序不重要,你可以使用CONTATNORE总是,有时把数字放在一些[i]索引之后。我的答案远不如你的好this@Peachyz:是的,OP似乎与所有的
splice
东西混淆了。