map 方法:
要求:将[["小三","小四","小二麻"],[198,178,190]]转换为[["小三",198],["小四",178],["小二麻",190]]
map代码解析:
function test(){
var arr=[["小三","小四","小二麻"],[198,178,190]];
var newarr=arr[0].map((x,y)=>arr.map(a=>a[y]));
}
主要内容: var newarr=arr[0].map((x,y)=>arr.map(a=>a[y]));
解析:1.map套map的运行方法,先运行外部map,再运行内部map,外部map运行1次,内部map运行n次。
2.现在解析上方内容:arr为[["小三","小四","小二麻"],[198,178,190]],arr[0]为["小三","小四","小二麻"]。
arr[0].map((x,y)因为只用到了y所以,arr[0].map((x,y)为y索引号[1,2,3],根据y索引号[1,2,3]在arr.map(a=>a[y])中循环,arr.map(a=>a[y])为数组arr中的两个数组中的元素值进行循环,不同的两个数组中,相同y索引号的内容,会添加在一个新数组中。
结果:[["小三",198],["小四",178],["小二麻",190]]