2个数组根据相同key合并成新的数组(es5、es6两种

682 ℃

因为项目需求需要兼容ie浏览器,ie不兼容es6语法,网上有很多关于es6的合并方法,但是就是很难找到es5的方法。

通用数组

var arr1 = [
	{number:1,name:'小明', age:'20'},
	{number:2, name:'小密', age:'20'},
	{number:3, name:'小米', age:'20'}
]
var arr2 = [
	{number:1, sex:'男'},
	{number:2, sex:'女'},
	{number:3, sex:'男'}
]
var arr3 = []

先介绍es6写法

arr3 = arr1.map(function(item) {
	const data = arr2.find(i => item.number == i.number);
	return {
		...item,
		...data
	};
})

console.log(arr3);

es5写法

arr2.forEach(function(o,d){
      for(var k in o){
          arr1.forEach(function(t){
              for(var key in t){
                  if(t.number == o.number){
                      t[k] = o[k];
                  }

              }
          })
      }
});
arr3 = arr1

console.log(arr3);

结果输出

(3) [{…}, {…}, {…}]
0: {number: 1, name: "小明", age: "20", sex: "男"}
1: {number: 2, name: "小密", age: "20", sex: "女"}
2: {number: 3, name: "小米", age: "20", sex: "男"}

filter实现数组过滤,es6语法过滤方法合集

ES6语法中有哪些简单的字符串转数组方法

ES6如何实现模块化编程

ES6语法种有哪些判断方法

vue语法中methods箭头函数的基本用法吗?

标签: es6语法, key, 合并

上面是“2个数组根据相同key合并成新的数组(es5、es6两种”的全面内容,想了解更多关于 vuejs 内容,请继续关注web建站教程。

当前网址:https://m.ipkd.cn/webs_134.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

生活小工具

收录了万年历、老黄历、八字智能排盘等100+款小工具!生活小工具
wordpress获取当前文章最后一个tags标签(不带链接)
javascript如何利用WebSocket对象实现Ping命令的实时通信
整屏滚动-fullPage.js演示-slide自动滚动
使用DEDECMS织梦自带的邮件功能发送邮件
织梦删除文章时不删除HTML与不删除附件图片