一、概念
map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。
二、语法
var new_arr = arr.map(callbackfn(value,index,array))
/* callbackfn 生成新数组元素的函数,使用三个参数:
(1) value:数组中正在处理的当前元素。
(2) index(可选):callback 数组中正在处理的当前元素的索引。
(3) array(可选):callback map 方法被调用的数组。
(4) 返回值:一个新数组,每个元素都是回调函数的结果。
*/
三、用法
//求数组中每个元素的平方根
var arr = [1,2,3]
var new_arr = arr.map(Math.sqrt)
console.log(arr); //[1,2,3]
console.log(new_arr); //[2,4,9]
/*当函数需要一个参数时map的工作方式:
当map循环遍历原始数组时,这个参数会自动被分配成数组中对应的每个元素*/
var numbers = [1, 4, 9];
var doubles = numbers.map(function (num) {
return num * 2;
});
console.log(numbers); //[1,4,9]
console.log(doubles); //[2,8,18]