JavaScript循環(huán)遍歷小結
總結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 對象屬性 }
總結
用于遍歷數(shù)組元素使用:for(),forEach(),map(),for...of
用于循環(huán)對象屬性使用:for...in
以上所述是小編給大家介紹的JavaScript循環(huán)遍歷你會用哪些小結篇,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
JS清除文本框內(nèi)容離開在恢復及鼠標離開文本框時觸發(fā)js的方法
多網(wǎng)站的需要填寫的文本框在默認狀態(tài)下都會給出一個默認的提示語言,當鼠標點擊此文本框的時候能夠將里面的默認文本清除,當刪除輸入的文本且焦點離開文本框的時候再將默認的文本寫入文本框2016-01-01