前言
从经典的 for 循环到 forEach() 方法,用于迭代数据集合的各种技术和方法比比皆是。但是现在比较流行的方法是 .map() 方法。
.map() 通过指定函数调用一个数组中每一项元素,来创建一个新数组。 .map() 是一种 non-mutating(非变异) 方法,它创建一个新数组,而不是只对调用数组进行更改的 mutating(变异) 方法。这可能很难记住。
语法:
array.map(function(currentValue,index,arr), thisValue)
currentValue:必须。当前元素的值
index:可选。当期元素的索引值
arr:可选。当期元素属于的数组对象
thisValue:可选。对象作为该执行回调时使用,传递给函数,用作 "this" 的值。可改变this指向,
map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
map() 方法按照原始数组元素顺序依次处理元素。
注意:map() 不会对空数组进行检测。
注意:map() 不会改变原始数组。
在这篇文章中,我们将探讨一下 JavaScript 中 .map() 的 4 个值得注意的用法。让我们开始!
在数组中的每一项元素上调用一个函数
将字符串转换为数组
在 JavaScript 库中用于渲染列表
重新格式化数组对象
小技巧使用案例
1. 在数组中的每一项元素上调用一个函数
如前所述,.map() 接受回调函数作为其参数之一,该函数的一个重要参数是由该函数处理的项的当前值。这是一个必需的参数。有了这个参数,我们可以修改数组中的每个单独项,并在其上创建一个新元素。这里有一个例子:
const sweetArray = [2, 3, 4, 5, 35]
const sweeterArray = sweetArray.map(sweetItem => {
return sweetItem * 2
})
console.log(sweetArray) // [2, 3, 4, 5, 35]
console.log(sweeterArray) // [4