1.对数组的map方法的解释
1. 格式:
array.map(function(item,index,arr){})
参数1 | item,必须 | 当前元素的值 |
---|---|---|
参数2 | index,可选 | 当前元素在数组中的索引值 |
参数3 | arr,可选 | 当前元素属于的数组对象 |
2. 作用:
对数组中的每一个元素进行处理,返回新的元素。
2.对箭头函数([a, b]) => a + b的理解
1. 示例
x => x * x
上面的箭头函数相当于:
function (x) {
return x * x;
}
2. 所以([a, b]) => a + b可以转化为
function([a,b]){
return a+b;
}
3.数组的解构赋值的理解
1. 示例
let [a, b, c] = [1, 2, 3];
a //1
b //2
c //3
- 上面代码表示,可以从数组[1,2,3]中提取值,按照对应位置,对变量a,b,c赋值。
2. 我们先把[1, 2], [3, 4]].map(([a, b]) => a + b转化为以下模式便于理解
var arr = [[1, 2], [3, 4]]
arr.map(function ([a, b]) {
return a + b;
})
- 那么此时函数里的形参[a,b]就相当于map方法参数中的item
- 我们需要对item进行解构赋值,也就是对函数的形参进行解构赋值
- 第一轮遍历: [a,b]=[1,2] ; 所以a=1,b=2; return a+b ; 所以return 3
- 第二轮遍历: [a,b]=[3,4] ; 所以a=3,b=4; return 3+4 ; 所以return 7
- 所以[[1, 2], [3, 4]].map(([a, b]) => a + b)返回[3,7]