今天开发中遇到,要将一个数组结果添加到另外一个有初始值的数组中。
years:[{name:"全部",value:""}],
newYears:[{name:"2019",value:"2019"},{name:"2020",value:"2020"},{name:"2021",value:"2021"},{name:"2022",value:"2022"},{name:"2023",value:"2023"}]
要用js代码实现:将newYears添加至years中。
首先想到的是,循环newYears,一个一个的将对象push到years数组中。
for(let i = 0;i < newYears.length;i++){
years.push(newYears[i]);
}
后面感觉这个方法代码有点多,想着说有没有不用循环就能实现的简便方法,在网上查了一下还真有,为了以后查找方便,这便把它记录下来了。
years.push.apply(years, newYears);
console.log(years);
打印出来的结果:
[{name:"全部",value:""},{name:"2019",value:"2019"},{name:"2020",value:"2020"},{name:"2021",value:"2021"},{name:"2022",value:"2022"},{name:"2023",value:"2023"}]
这便是我想要的结果了。
参考链接:
https://www.cnblogs.com/beileixinqing/p/8065297.html
在网上找到了另外一个方法,concat(Array) ,https://blog.csdn.net/anguowei/article/details/80239157
var a = [1,2,3];
var b = [4,5];
a.concat(b)
结果是[1, 2, 3, 4, 5],但是,在我这个情景下,硬是没有看到效果。我个人猜测是不是不能合并数组对象,希望大家帮我答疑解惑,谢谢!