數組和對象之間的操作,很多都依賴於map的方法
map,是將數據進行遍歷,將返回值重新組成一個數組
1.將數組重新組成新數組對象
原理:利用數組的方法 map,對數組遍歷重構數組
let arr = [
{id:1,name:'a',age:15,fav:"籃球"},
{id:2,name:'b',age:15,fav:"足球"},
{id:3,name:'c',age:15,fav:"乒乓球"},
{id:4,name:'d',age:15,fav:"排球"},
{id:5,name:'e',age:15,fav:"羽毛球"}
];
let arr1 = arr.map((item,index) => {
return {peple:item.name,myFav:item.fav}
});
打印的arr1 -
2.給數組的每個對象添加一個屬性
原理 1- 利用map進行重構
let arr = [
{name:'a',age:15,fav:"籃球"},
{name:'b',age:15,fav:"足球"},
{name:'c',age:15,fav:"乒乓球"},
{name:'d',age:15,fav:"排球"},
{name:'e',age:15,fav:"羽毛球"}
];
let arr1 = arr.map((item,index) => {
return {peple:item.name,myFav:item.fav,index:index+1}
});
原理2 - 利用深拷貝 + map
let arr = [
{name:'a',age:15,fav:"籃球"},
{name:'b',age:15,fav:"足球"},
{name:'c',age:15,fav:"乒乓球"},
{name:'d',age:15,fav:"排球"},
{name:'e',age:15,fav:"羽毛球"}
];
let arr1 = arr.map((item,index) => {
return Object.assign(item,{index:index+1})
});
打印arr1
3.多個數組對象利用index進行對應
原理-利用解構+map
let arr = [
{name:'a',age:15,fav:"籃球"},
{name:'b',age:15,fav:"足球"},
{name:'c',age:15,fav:"乒乓球"},
{name:'d',age:15,fav:"排球"},
{name:'e',age:15,fav:"羽毛球"}
];
let arr1 = [
{key:'1',val:'sss'},
{key:'2',val:'fsd'},
{key:'3',val:'fds'},
{key:'4',val:'fewf'},
{key:'5',val:'ewd'}
]
let arr2 = arr.map((item,index) => {
return {...arr1[index],...item}
});
打印arr2