1.filter 过滤筛选
返回新数组,遍历数组中元素,哪一项返回true就把哪一项存放r新数组中
例1:
var arr=[{"name":"新疆","value":0.229},{"name":"安徽","value":0.279},{"name":"null","value":0.279},];
var arr2 = arr.filter(function(x) {
if (x.name!="null"){ //如果name不等于null 就存到新数组中 原数组不变
return true
}
});
用这个方法删除数组中的指定元素 比 arr.splic(item,1)好
arr.splic(item,1)删除指定元素 的时候 字符串可以删除
把input 里的东西push到数组 然后点击删除 ,汉字可以 数字型的可能删不了
例2:
var arr = [1,2,3,4];
var arr2 = arr.filter((item,index,arr) => {
return item > 2 //新数组为[3,4]
})
//filter过滤掉数组中不满足条件的值,返回一个新数组,不改变原数组的值。
2.map()
让数组中的每一项都做相同的操作 返回一个新数组,不改变原数组
例1:
var arr3=[2,3,4,5];
var arr4=arr3.map(function(item,index,arr){
return item*2;
})
例2:jquery中的$.map(); 可以遍历对象,
var obj = { a: 10, b: 15, c: 20 };
var arr = $.map( obj, function( value, key ) {
return value; //[10,15,20]
return key; //[a,b,c]
2.遍历数组对象
for(var key in arr) {
console.log(arr[key].name);
}
//同样是遍历 但上边的更简洁 结果一样
for(var i=0;i<arr.length;i++){
console.log(arr[i].name);
}