这篇文章主要介绍了JavaScript数组合并的常见方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript数组合并的常见方法有哪些文章都会有所收获,下面我们一起来看看吧。
1.ES6 解构
[...arr, ...array]
不改原数组值,生成新的数组。
2.遍历添加
array.forEach(item => { arr.push(item) })
遍历方法:forEach、map、filter、every、for、for in、for of等。
arr值改变成追加后的样子,array值不改变
3.concat
arr.concat(array)
不改原数组值,生成新的数组。
4.join & split
(arr.join(',') + ',' + array.join(',')).split(',')
原数组值不改变。
默认会把数组中的数字类型转成字符串类型。
数组的项是引用类型时会自动生成'[object Object]',造成数据丢失或错误。
5.解构添加
arr.push(...array) arr.unshift(...array)
arr变成合并后的样子,array值不变。
6.splice解构
arr.splice(arr.length, '', ...array)
原数组值不变,返回空数组。
7.apply
arr.push.apply(arr, array) arr.unshift.apply(arr, array)
原数组值不改变,返回拼接后数组的长度。
8.call
arr.push.call(arr, ...array) arr.unshift.call(arr, ...array)
原数组值不改变,返回拼接后数组的长度。
补充:两个数组的交叉合并
var ary=["A","B","C","D"]; var ary2=[1,2,3,4,5,6,]; function aryJoinAry(ary,ary2) { var itemAry=[]; var minLength; //先拿到两个数组中长度较短的那个数组的长度 if(ary.length>ary2.length){ minLength=ary2.length; } else{ minLength=ary.length; } //将两个数组中较长的数组记录下来 var longAry=arguments[0].length>arguments[1].length?arguments[0]:arguments[1]; //循环范围为较短的那个数组的长度 for (var i = 0; i < minLength; i++) { //将数组放入临时数组中 itemAry.push(ary[i]); itemAry.push(ary2[i]) } //itemAry和多余的新数组拼接起来并返回。 return itemAry.concat(longAry.slice(minLength)); } console.log(aryJoinAry(ary, ary2));// ["A", 1, "B", 2, "C", 3, "D", 4, 5, 6]
关于“JavaScript数组合并的常见方法有哪些”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“JavaScript数组合并的常见方法有哪些”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程之家行业资讯频道。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。