本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。
javascript数组有map方法。
(资料图片)
javascript 数组map()方法
map()方法可以对数组的每个元素调用指定的回调函数进行处理,并返回包含结果的数组。
map() 方法按照原始数组元素顺序依次处理元素。
语法
array.map(function(currentValue,index,arr), thisValue)
参数 | 描述 |
---|---|
function(currentValue, index,arr) | 必须。函数,数组中的每个元素都会执行这个函数。 函数参数: currentValue必须。当前元素的值 index可选。当前元素的索引值 arr可选。当前元素属于的数组对象 |
thisValue | 可选。对象作为该执行回调时使用,传递给函数,用作 "this" 的值。如果省略了 thisValue,或者传入 null、undefined,那么回调函数的 this 为全局对象。 |
map() 方法将返回一个新数组,其中每个元素均为关联的原始数组元素的回调函数返回值。对于数组中的每个元素,map() 方法都会调用 回调 函数一次(采用升序索引顺序),并不会为数组中缺少的元素调用回调函数。
除了数组对象之外,map() 方法可由具有 length 属性,且具有已按编制索引的属性名的任何对象使用,如 Arguments 参数对象。
下面通过代码示例来具体了解一下:
示例1
下面示例使用 map() 方法映射数组,把数组中每个元素的值平方,乘以 PI 值,把返回的圆的面积值作为新数组的元素值,最后返回这个新数组。
function f (radius) { var area = Math.PI * (radius * radius); return area.toFixed(0);}var a = [10,20,30];var a1 = a.map(f);console.log(a1);
示例2
下面示例使用 map() 方法映射数组,把数组中每个元素的值除以一个阈值,然后返回这个新数组其中回调函数和阈值都以对象的属性存在,通过这种方法演示如何在 map 中使用 thisArg 参数。
var obj = { val : 10, f : function (value) { return value % this.val; }}var a = [6,12,25,30];var a1 = a.map(obj.f, obj);console.log(a1); //6,2,5,0
示例3
下面示例演示如何使用 JavaScript 内置方法作为回调函数。
var a = [9, 16];var a1 = a.map(Math.sqrt);console.log(a1); //3,4
【推荐学习:javascript学习教程、web前端视频】
以上就是javascript数组有map方法吗的详细内容,更多请关注php中文网其它相关文章!