📜  用于对象的 js 循环 - Javascript (1)

📅  最后修改于: 2023-12-03 14:56:20.611000             🧑  作者: Mango

用于对象的 JS 循环 - Javascript

在 JavaScript 中,我们可以使用不同的循环控制语句来对数组和对象进行循环操作。本文将重点介绍对象的循环操作。

for...in 循环

for...in 循环是一种迭代对象属性的循环语句。它可以遍历对象的所有可枚举属性,包括其原型链上继承的属性。 for...in 循环的语法如下:

for (variable in object) {
  // code to be executed
}
  • variable:在每次循环中,变量 variable 将被赋值为一个对象的属性名。
  • object:要迭代的对象。

下面是一个使用 for...in 循环迭代对象属性的例子:

const person = {
  firstName: "John",
  lastName: "Doe",
  age: 25
};

for (let prop in person) {
  console.log(`${prop}: ${person[prop]}`);
}

输出:

firstName: John
lastName: Doe
age: 25

需要注意的是,for...in 循环并不按照对象属性的定义顺序进行迭代。

Object.keys() 方法

Object.keys() 方法可以返回一个由对象的属性名(不包括其原型链上继承的属性)组成的数组。这个方法可以结合 for...of 循环来迭代一个对象的属性:

const person = {
  firstName: "John",
  lastName: "Doe",
  age: 25
};

for (let prop of Object.keys(person)) {
  console.log(`${prop}: ${person[prop]}`);
}

输出:

firstName: John
lastName: Doe
age: 25
Object.getOwnPropertyNames() 方法

Object.getOwnPropertyNames() 方法返回一个由对象的所有属性名(包括其原型链上的属性)组成的数组。这个方法可以被结合 for...of 循环使用来迭代对象的所有属性:

const person = {
  firstName: "John",
  lastName: "Doe",
  age: 25
};

for (let prop of Object.getOwnPropertyNames(person)) {
  console.log(`${prop}: ${person[prop]}`);
}

输出:

firstName: John
lastName: Doe
age: 25

需要注意的是,Object.getOwnPropertyNames() 返回的数组中属性名的顺序与它在对象字面量中的定义顺序相同。

结论

在 JavaScript 中循环对象可以使用 for...in 循环语句,或者使用 Object.keys()Object.getOwnPropertyNames() 方法配合 for...of 循环来迭代对象的属性。

以上就是关于用于对象的 JS 循环的介绍,希望能对你有所帮助!