- 1、js中數組和對象循環遍歷
- 2、js循環遍歷對象的方法
- 3、js遍歷json對象(推薦)
數組:
var arr = [『a』,『b』,’c’];
for (let i = 0;iarr.length;i++){
console.log(i,arr[i])
};
對象:
var person = { name:’tom’,age:’29’,sex:’男『};
// 對象如果要用for循環來遍歷,需要先有Object.key()的方法來拿到可迭代(遍歷)的私有屬性名的集合(數組)
var keys = Object.keys(person);
for (let i = 0;ikeys.length;i++){
console.log(keys[i]+”:”+person[keys[i]]);
};
數組:
for(let key in arr){
// 值得注意的是,key為數組的索引,如若需要獲取屬性的值,則需要使用數組加索引下標 的形式來獲取
console.log(key,arr[key]);
}
對象:
for(let key in obj){
// 值得注意的是,key為對象的鍵名,鍵值要以obj[key]的方式來獲取
console.log(key,obj[key]);
}
數組:
for(let value of arr){
//值得注意的是,for…of跟for…in是不一樣的,for…in遍歷的是數組的索引,for…of遍歷的是數組的值
console.log(value);
}
對象:
for…in是不能單獨來遍歷一個對象的,會報錯。
如果對象是一個類數組對象,那用array.from方法轉成一個數組就可以用for…of來遍歷了。
或者結合Object.keys()方法來使用
for(let key of Object.keys(obj)){
// for…of遍歷輸出的也是鍵名
console.log(key,obj[obj]);
}
數組:
forEach()方法遍曆數組是沒有返回值
值得注意的是數組中有幾項,那麼傳遞進去的匿名回調函數就需要執行幾次;
arr.forEach((item,index,arr)={
console.log(item,index,arr)
)
// 其中item是數組中的當前項,index是數組中的當前下標,arr是原始數組
對象:
原則上forEach是用來遍曆數組的,不能遍歷對象,但是可以用Object.getOnwPropertyNames()方法來使得對象能被forEach遍歷出來。
Object.getOnwPropertyNames()返回一個數組,成員是參數對象自身全部屬性的屬性名,不管該屬性是否能被遍歷。
Object.getOnwPropertyNames(obj).forEach((item,index,arr)={
console.log(item,index,obj[item])
})
js循環遍歷對象的方法
var array = {
‘key1’:1,
‘key2’:2
}
for(let key in array){
console.log(key + ‘—‘ + obj[key])
}
第二種方法
const obj = {
id:1,
name:’zhangsan’,
age:18
}
console.log(Object.keys(obj))
console.log(Object.values(obj))
原生js遍歷json對象
遍歷json對象:
無規律:
有規律:
遍歷json對象
有如下 json對象:
var obj ={“name”:”馮娟”,”password”:”123456″,”department”:”技術部”,”sex”:”女”,”old”:30};
遍歷方法:
數組對象的遍歷:
下面我們對照一下js和jquer的遍歷方法:
原文網址:
原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/126278.html