forEach遍歷數組對象且去重

forEach遍歷數組對象

var obj1 = [{

key: '01',

value: '哈哈'

}, {

key: '02',

value: '旺旺'

}, {

key: '03',

value: '娃娃'

}, {

key: '04',

value: '皮皮'

}, {

key: '05',

value: '波波'

}];

 

//  遍歷數組對象

var str1 = "";

angular.forEach(obj1, function(data, index, obj1) {

//data等價於obj1[index]

str1 += obj1[index].value + ',';

});

str1 = str1.substring(0, str1.length - 1);

console.log(str1); //  哈哈,旺旺,娃娃,皮皮,波波

 

 

//index 數組參數均可以省略

var str2 = "";

angular.forEach(obj1, function(data) {

str2 += data.key + ',';

})

str2 = str2.substring(0, str2.length - 1);

console.log(str2); //  01,02,03,04,05

 

 

//forEach() 遍歷數組對象

var str3 = "";

obj1.forEach(function(data){

str3 += data.value + ',';

})

str3 = str3.substring(0, str3.length - 1);

console.log(str3); //  哈哈,旺旺,娃娃,皮皮,波波

 

//  遍歷數組對象   根據主鍵去重

var o = {}; var arr = []; angular.forEach(obj1, function(data) { if(!o[data.key]){ arr.push(data.key); o[data.key] = true; } });

console.log(arr); //  ["01", "02", "03", "04"]

 

語法:數組

array:須要遍歷的集合spa

data:遍歷時當前的數據(數組中的每一項)code

index:遍歷時當前索引對象

這裏要注意的是:function()裏面的參數第一個是value ,第二個是下標(index),第三個是要便利的數組;blog

也能夠不用寫後面兩個參數索引

 1 var array = [{a: 1}, {b: 2}];
 2 
 3 angular.forEach(array , function(data, index, array){  4 
 5 console.log(data == array[index]); //true
 6 
 7 })
 8 
 9  
10 
11 array.forEach(function(data, index, array){
12 
13 console.log(data == array[index]); //true
14 
15 })
相關文章
相關標籤/搜索