map
map将原来的数据映射成新数组;
1 2 3 4 5 6 7 8 9
| var arr = [1,2,3,4];
var arr2 = arr.map(function(item){return item;});
console.log(arr2);
console.log(typeof arr2);
|
声明一个userInfo
数组对象:
1 2 3 4 5 6
| var userInfo = [ {"name": "lmo", "email": "lmo@lmo.space"}, {"name": "lomo1", "email": "lomo1@lomo1.spae"}, {"name": "lomo", "email": "lomo@lomo.space"}, {"name": "lomo2", "email": "lomo2@lomo2.space"} ];
|
使用map取出特定属性值的集合。
1 2 3 4 5 6 7 8 9 10 11
| var users = userInfo.map(function(item){return item;}); users.length;
var usersName = userInfo.map(function(item){return item.name;}); console.log(usersName);
var usersEmail = userInfo.map(function(item){return item.email;}); usersEmail;
console.log(usersEmail.join(","));
|
兼容性–改进:
IE6 ~ IE8
Array.prototype.map
map方法的根->Array;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| if(typeof Array.prototype.mar != "function") { Array.prototype.map = function(fn, context){ var arr = []; if(typeof fn === "function") { for(var k = 0; k < this.length; k ++) { arr.push(fn.call(context, this[k], this)); } } return arr; }; }
|
版权声明:
本文由Lomo创作和发表,采用署名(BY)-非商业性使用(NC)-相同方式共享(SA)国际许可协议进行许可,
转载请注明作者及出处,本文作者为Lomo,本文标题为js-map.