js 对象 数组 遍历常用方法

遍历对象

1、for … in 循环遍历
对象自身的和继承的可枚举属性(循环遍历对象自身的和继承的可枚举属性(不含Symbol属性).).

let obj = {
  name: '小明',
   age: '20'
 }
 for(let i in obj) {
   console.log(i, ':', obj[i]);
 }
 
 结果如下图:

js 对象 数组 遍历常用方法_第1张图片
2、使用Object.keys()遍历
返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含Symbol属性)

let obj = {
  name: '小明',
  age: '20'
}

Object.keys(obj).forEach((item)=>{
  console.log(item, ':', obj[item]);
})

结果如下图:

js 对象 数组 遍历常用方法_第2张图片
使用Object.values()遍历
返回的是value值。(跟Object.keys()相反,返回的是key值) 对象转换数组时可用。

let obj = {
  name: '小明',
  age: '20'
}
console.log(Object.values(obj))

结果如下图:

js 对象 数组 遍历常用方法_第3张图片
3、使用Object.getOwnPropertyNames(obj)
返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性).

let obj = {
  name: '小明',
  age: '20'
}

Object.getOwnPropertyNames(obj).forEach((item)=>{
  console.log(item, ':', obj[item])
})

结果如下图:

js 对象 数组 遍历常用方法_第4张图片
4、使用Reflect.ownKeys(obj)遍历
返回一个数组,包含对象自身的所有属性,不管属性名是Symbol或字符串,也不管是否可枚举.


let obj = {
  name: '小明',
  age: '20'
}

Reflect.ownKeys(obj).forEach((item)=>{
  console.log(item, ':', obj[item])
})

结果如下图:

js 对象 数组 遍历常用方法_第5张图片

遍历数组

1、使用forEach遍历


let arr = ['小明', '20', '小红', '19']

arr.forEach((index, item)=>{
  console.log(index, item);
})

结果如下图:

js 对象 数组 遍历常用方法_第6张图片
2、使用for…in…遍历

let arr = ['小明', '20', '小红', '19']

for(let item in arr){
  console.log(item, arr[item]);
}

结果如下图:

js 对象 数组 遍历常用方法_第7张图片
3、使用for-of遍历

let arr = ['小明', '20', '小红', '19']

for(let item of arr){
  console.log(item);
}

结果如下图:

js 对象 数组 遍历常用方法_第8张图片

你可能感兴趣的:(方法)