方法1
var arr1 = ['a', 'b', 'c'];
var arr2 = ['1', '2', '3'];
// 把splice的前2个参数插入到arr2的前面
arr2.unshift(2, 0); // 或者先把arr2 reverse 翻转,再把参数push进去,然后再把数组翻转回来
console.log(arr2);
//[2, 0, "1", "2", "3"]
[].splice.apply(arr1, arr2);
console.log(arr1);
//["a", "b", "1", "2", "3", "c"]复制代码
方法2
// 在原型上自定义一个方法
Array.prototype.insert = function(index, arr) {
this.splice.apply(this, [index, 0].concat(arr);
return this;
};
// 使用
["a", "b", "c", "d"].insert(2, ["X", "Y", "Z"]);
// 结果 ["a", "b", "X", "Y", "Z", "c", "d"]
复制代码