一、陣列的遍歷:
首先定義一個陣列
arr=['snow','bran','king','nightking'];
複製程式碼
1、for迴圈,需要知道陣列的長度; 2、foreach,沒有返回值,可以不知道陣列長度;
arr.forEach(function(ele,index){
console.log(index);
console.log(ele)
})
複製程式碼
3、map函式,遍歷陣列每個元素,並回撥操作,需要返回值,返回值組成新陣列,原陣列不變;
var newarr=arr.map(function(i){
return "hello "+i
});//歡迎加入全棧開發交流圈一起學習交流:864305860
console.log(newarr)
複製程式碼
4、filter函式:過濾通過條件的元素組成一個新陣列,原陣列不變;
var newarr=arr.filter(function(i){
return i == "bran"
});
console.log(newarr)
複製程式碼
5、some函式,遍歷陣列中是否有符合條件的函式,返回布林值;
var yy=arr.some(function(i){
return i.length>4
});
console.log(yy) //true
複製程式碼
6、every函式,遍歷陣列是否每個元素都符合條件,返回布林值;
var xx=arr.every(function(i){
return i.length>4
});//歡迎加入全棧開發交流圈一起學習交流:864305860
console.log(xx) //false
複製程式碼
7、reduce函式,為陣列中的每一個元素依次執行回撥函式 語法:
arr.reduce(callback, initialValue)
[0,1,2,3,4].reduce(function(previousValue, currentValue, index, array){
return previousValue + currentValue;
});//歡迎加入全棧開發交流圈一起學習交流:864305860
複製程式碼
callback:執行陣列中每個值的函式,包括四個引數; previousValue:上一次呼叫回撥返回的值,或者是提供的初始值(initialValue); currentValue:當前被處理的值; index:當前元素在陣列中的索引; array:呼叫reduce的陣列; initialValue:作為第一次呼叫callback的第一個引數; 例如:
var total = [0, 1, 2, 3].reduce(function(a, b) {
return a + b;
});
// total == 6
var flattened = [[0, 1], [2, 3], [4, 5]].reduce(function(a, b) {
return a.concat(b);
});
// flattened is [0, 1, 2, 3, 4, 5]
複製程式碼
要提供initialValue的話:
var total = [0, 1, 2, 3].reduce(function(a, b) {
return a + b;
},4);//歡迎加入全棧開發交流圈一起學習交流:864305860
console.log(total); //10
複製程式碼
二、物件的遍歷
var obj={snow:1,bran:2,king:3,nightking:4};
for(let i in obj){
console.log(i+','+obj[i])
}
複製程式碼
in也可以用來遍歷陣列,不過i對應於陣列的key值:
for(let i in arr){
console.log(i+','+arr[i])
}//歡迎加入全棧開發交流圈一起學習交流:864305860
複製程式碼
結語
感謝您的觀看,如有不足之處,歡迎批評指正。 本次給大家推薦一個免費的學習群,裡面概括移動應用網站開發,css,html,webpack,vue node angular以及面試資源等。 對web開發技術感興趣的同學,歡迎加入Q群:864305860,不管你是小白還是大牛我都歡迎,還有大牛整理的一套高效率學習路線和教程與您免費分享,同時每天更新視訊資料。 最後,祝大家早日學有所成,拿到滿意offer,快速升職加薪,走上人生巔峰。