JavaScript循環(huán)遍歷小結(jié)
總結(jié)JavaScript中的循環(huán)遍歷
定義一個數(shù)組和對象
const arr = ['a', 'b', 'c', 'd', 'e', 'f'];
const obj = {
a: 1,
b: 2,
c: 3,
d: 4
}for()
經(jīng)常用來遍歷數(shù)組元素
遍歷值為數(shù)組元素索引
for (let i = 0; len = arr.length, i < len; i++) {
console.log(i); // 0 1 2 3 4 5
console.log(arr[i]); // a b c d e f
}forEach()
用來遍歷數(shù)組元素
第一個參數(shù)為數(shù)組元素,第二個參數(shù)為數(shù)組元素索引,第三個參數(shù)為數(shù)組本身(可選)
沒有返回值
arr.forEach((item, index) => {
console.log(item); // a b c d e f
console.log(index); // 0 1 2 3 4 5
})map()
用來遍歷數(shù)組元素
第一個參數(shù)為數(shù)組元素,第二個參數(shù)為數(shù)組元素索引,第三個參數(shù)為數(shù)組本身(可選)
有返回值,返回一個新數(shù)組
every(),some(),filter(),reduce(),reduceRight()不再一一介紹,詳細請看Js中Array方法有哪些?
let arrData = arr.map((item, index) => {
console.log(item); // a b c d e f
console.log(index); // 0 1 2 3 4 5
return item;
})
console.log(arrData); // ["a", "b", "c", "d", "e", "f"]for...in
可循環(huán)對象和數(shù)組,推薦用于循環(huán)對象
用于循環(huán)對象時
循環(huán)值為對象屬性
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
console.log(key); // a b c d 屬性
console.log(obj[key]); // 1 2 3 4 屬性值
}
}用于遍歷數(shù)組時
值為數(shù)組索引
for (let index in arr) {
console.log(index); // 0 1 2 3 4 5 數(shù)組索引
console.log(arr[index]); // a b c d e f 數(shù)組值
}當我們給數(shù)組添加一個屬性name
arr.name = '我是自定義的屬性'
for (let index in arr) {
console.log(index); // 0 1 2 3 4 5 name (會遍歷出我們自定義的屬性)
console.log(arr[index]); // a b c d e f 我是自定義屬性name
}for...of
可循環(huán)對象和數(shù)組,推薦用于遍歷數(shù)組
用于遍歷數(shù)組時
遍歷值為數(shù)組元素
for (let value of arr) {
console.log(value); // a b c d e f 數(shù)組值
}用于循環(huán)對象時
須配合Object.keys()一起使用,直接用于循環(huán)對象會報錯,不推薦使用for...of循環(huán)對象
循環(huán)值為對象屬性
for (let value of Object.keys(obj)) {
console.log(value); // a b c d 對象屬性
}總結(jié)
用于遍歷數(shù)組元素使用:for(),forEach(),map(),for...of
用于循環(huán)對象屬性使用:for...in
以上所述是小編給大家介紹的JavaScript循環(huán)遍歷你會用哪些小結(jié)篇,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
快速獲取/設置iframe內(nèi)對象元素的幾種js實現(xiàn)方法
下面小編就為大家?guī)硪黄焖佾@取/設置iframe內(nèi)對象元素的幾種js實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05
使用TypeScript實現(xiàn)高效的異步隊列任務管理
在javaScript項目開發(fā)中,異步編程是不可或缺的一部分,從網(wǎng)絡請求到延時操作,異步操作使得我們能夠在等待某個任務完成時繼續(xù)執(zhí)行其他任務,提高應用的響應性和性能,本文使用JavaScript實現(xiàn)一個異步隊列來優(yōu)雅地管理復雜的異步任務流,需要的朋友可以參考下2024-03-03
現(xiàn)代 JavaScript 開發(fā)編程風格Idiomatic.js指南中文版
下面的章節(jié)描述的是一個 合理 的現(xiàn)代 JavaScript 開發(fā)風格指南,并非硬性規(guī)定。其想送出的核心理念是高度統(tǒng)一的代碼風格(the law of code style consistency)。2014-05-05

