es6的map()方法解释

es6的map()方法解释

map方法的作用不难理解,即“映射”,也就是原数组被“映射”成对应新数组。下面这个例子是数值项求平方:

var data = [1, 2, 3, 4];

var arrayOfSquares = data.map(function (item) {

return item * item;

});

alert(arrayOfSquares); // 1, 4, 9, 16

callback需要有return值,如果没有,就像下面这样:

var data = [1, 2, 3, 4];

var arrayOfSquares = data.map(function() {});

arrayOfSquares.forEach(console.log);

数组所有项都被映射成了undefined:

在实际使用的时候,我们可以利用map方法方便获得对象数组中的特定属性值们。例如下面这个例子(之后的兼容demo也是该例子):

var users = [

{name: "张XX", "email": "[email protected]"},

{name: "江XX", "email": "[email protected]"},

{name: "李XX", "email": "[email protected]"}

];

var emails = users.map(function (user) { return user.email; });

console.log(emails.join(",")); // [email protected], [email protected], [email protected]

原文地址:https://www.cnblogs.com/sexintercourse/p/11802472.html

时间: 2024-10-01 14:54:09

es6的map()方法解释的相关文章

ES6的数组方法之Array.from

首先说说什么是数组:数组在类型划分上归为Object,属于比较特殊的对象,数组的索引值类似于对象的key值. 数组的几个注意点: 1.数组的长度是可读属性,不可更改,数组的长度根据索引最大值. 2.数组的索引值可以是字符串等,但这个不影响数组的长度. 3.数组根据下标最大值,会自动补齐对应的其他索引值,且值为空. ES6新增了数组的一系列方法,如Array.of,Array.from,Array.find等等 数组与类数组的最大区别在于数组自身具有迭代器iterator Array.from  

JavaScript ES6 数组新方法 学习随笔

JavaScript ES6 数组新方法 学习随笔 新建数组 var arr = [1, 2, 2, 3, 4] includes 方法 includes 查找数组有无该参数 有返回true var includes = arr.includes(2) map方法 map 遍历处理返回新数组 原数组不会改变 var map = arr.map(function (item) { return ++item }) reduce方法 reduce 遍历处理数组返回结果 prev与next中间的符号以

es6数组的方法

1.复习的函数 函数是由关键字function声明的,他是一个引用数据类型,是Function的实例,在调用的时候会开辟一个私有空间 2.函数的成员 arguments:null  (是实参构成的数组集合) caller:null(是这个函数的调用者,函数在A个函数内调用,那么A就是这个函数的调用者,在window下caller是null) 案例: function fn(){ console.log(fn.caller) } function f(){ fn(23,56) } f()     

JavaScript Array map() 方法

语法: array.map(function(currentValue,index,arr), thisValue) currentValue:必须.当前元素的值index:可选.当期元素的索引值arr:可选.当期元素属于的数组对象thisValue:可选.对象作为该执行回调时使用,传递给函数,用作 "this" 的值.可改变this指向, map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值. map() 方法按照原始数组元素顺序依次处理元素. 注意: map

WebView组件学习以及WebViewClient 的方法解释

在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件.利用WebView组件就可以做出款完全属于自己的手机浏览器,就想在windows上用IE内核做一个浏览器一样! 1.因为是浏览器,访问网络是必须的.所以,AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not available错误. 2.设置浏览器是否运行网页上的javascript代码:

JS自带的map()方法

1. map()方法返回一个由原数组的每个元素调用一个指定方法后返回值组成的新数组. 2. 例子: 2.1 在字符串中使用map 在一个String上使用map方法获取字符串中每个字符所对应的ASCII码组成的数组: var map = Array.prototype.map var a = map.call("Hello World",function(x){ return x.charCodeAt(0); })// a的值为[72, 101, 108, 108, 111, 32,

数组的map方法

map方法 不支持IE6.7 .8 array1.map(fn) array1.map(fn[,thisArg]) 注意: fn 必须是函数,如果不是函数则会报错  TypeError: undefined is not a function4 map()不会对空数组进行检测.map()不会改变原是数组 1 .理解 (官方:一个新数组,其中的每个元素均为关联的原始的数组元素的回调函数的返回值) 下图中我把上面的话翻译了一下 2 .内置JavaScript方法用做回调函数,例如:Math对象方法

[ES6] 18. Map

ES6 provides Map, it is a set of k-v pair. Key can be number, string, object, function and even undefined. var m = new Map(); Methods: 1. set(k,v) m.set("edition", 6) // 键是字符串 m.set(262, "standard") // 键是数值 m.set(undefined, "nah&q

js map方法的使用

原型: array.map(callback,[ thisObject]);  callback的参数类似: [].map(function(value, index, array) { // ... }); 三个参数为:当前正在遍历的元素, 元素索引, 原数组本身. 示例: ["1", "2", "3"].map(returnInt);// 返回[1,2,3] function returnInt(element){ return parseI