js数组 indexOf、filter、forEach、map用
js数组之indexOf/filter/forEach/map用法学习
indexOf()方法返回在该数组中第一个找到的元素位置,如果它不存在则返回-1。
var arr = ['A','B','C'];
console.log("found:", arr.indexOf("A") != -1);
该filter()方法创建一个新的匹配过滤条件的数组。
var arr = [
{"name":"A", "count": 2},
{"name":"B", "count": 5},
{"name":"C", "count": 3},
{"name":"B", "count": 16},
];
var newArr = arr.filter((item) => {
return item.name === "B";
}
);
console.log("Filter results:",newArr);
forEach为每个元素执行对应的方法,forEach是用来替换for循环的
var arr = [1,2,3,4,5,6,7,8];
arr.forEach((item,index) => {
console.log(item);
}
);
map()对数组的每个元素进行一定操作(映射)后,会返回一个新的数组,map()是处理服务器返回数据时是一个非常实用的函数。
var oldArr = [{first_name:"He",last_name:"xiaoxia"},{first_name:"Liu",last_name:"binbin"},{first_name:"Tang",last_name:"feifei"}];
function getNewArr(){
return oldArr.map((item,index) => {
item.full_name = [item.first_name,item.last_name].join(" ");
return item;
}
);
}
console.log(getNewArr());
如何兼容IE浏览器:
http://www.cnblogs.com/_franky/archive/2009/03/11/1409132.html?utm_source=caibaojian.com
参考文章:http://caibaojian.com/5-array-methods.html