ES6-map

2 篇文章 0 订阅

map() 方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组

[].map(function(value, index, array) {
	  ...
	 });

第一个参数,数组中当前被传递的元素
第二个参数,数组中当前被传递的元素的索引
第三个参数,调用 map 方法的数组

1.得到新的数据

var data = [1, 2, 3, 4];
		var arrayOfSquares = data.map(function (item) {
		  return item * item;
		});
		alert(arrayOfSquares); // 1, 4, 9, 16

2.得到原数组部分数据

var users = [
		  {name: "张含韵", "email": "zhang@email.com"},
		  {name: "江一燕",   "email": "jiang@email.com"},
		  {name: "李小璐",  "email": "li@email.com"}
		];
	var emails = users.map(function (user) { return user.email; });	
	console.log(emails); // ["zhang@email.com", "jiang@email.com", "li@email.com"]
	console.log(emails.join(',')); // zhang@email.com,jiang@email.com,li@email.com

3.Array.prototype扩展可以让IE6-IE8浏览器也支持map方法

if(typeof Array.prototype.map !="function"){
		Array.prototype.map=function(fn,context){
			var arr=[];
			if(typeof fn==="function"){
				for(var k=0,length=this.length;k<length;k++){
					arr.push(fn.call(context,this[k],k,this));
				}
			}
			return arr;
		}
	}
	console.dir(Array);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值