JavaScript for…in 循环

2025年4月2日 | 阅读4分钟

引言

JavaScript 中,for...in 循环用于遍历对象的属性。它只遍历那些可枚举属性设置为“true”的对象键。

for...in 循环允许您访问对象的每个键或属性名。

JavaScript for…in 循环语法

for...in 循环的语法如下:

key:一个 变量,用于存储属于对象的单个键。

object:我们想要遍历其键的对象。

JavaScript for…in 循环如何工作?

有几个关键点可以说明 JavaScript for…in 循环的工作原理:

  • 在第一次迭代中,key 变量被赋值为对象的第一个键。然后,执行循环体。
  • 在第二次迭代中,key 变量被赋值为对象的下一个键。然后,再次执行循环体。
  • 这个过程一直持续到没有更多可迭代的键为止。

示例 1

立即执行

输出

2
12
5

 

示例 2

立即执行

输出

Jhon: $14000
Shaun: $24000
Lea: $15000

说明

在此示例中,我们使用 for...in 循环遍历对象中 salaries 的属性。然后,我们在对象的每个值前面加上 $ 符号。

for 循环嵌套在 for-in 循环中

在这种方法中,一个 for 循环嵌套在 for-in 循环中。JavaScript 中的 for-in 循环遍历对象的属性,而内部的 for 循环可以为每个属性执行额外的迭代。

语法

for 循环嵌套在 for-in 循环中的语法如下:

示例

展示 JavaScript 中 for-in 循环内嵌套 for 循环的程序。

示例

立即执行

输出

Key: p
  Value multiplied by 1: 5
  Value multiplied by 2: 10
  Value multiplied by 3: 15
Key: q
  Value multiplied by 1: 4
  Value multiplied by 2: 8
  Value multiplied by 3: 12
Key: r
  Value multiplied by 1: 3
  Value multiplied by 2: 6
  Value multiplied by 3: 9

关于 JavaScript for…in 循环的重要事实

如果保持索引顺序很重要,则不建议在 JavaScript 中将 for...in 循环与数组一起使用。

在 JavaScript 中,for...in 循环的迭代顺序是实现定义的,这意味着数组元素可能不会按预期顺序访问。

有时属性的迭代顺序可能与对象中定义的属性不符。

JavaScript for…in 循环的关键特性

专为对象设计

JavaScript for...in 循环主要用于遍历对象的枚举属性。它包括其自身属性以及通过原型链继承的属性。

访问属性键

它具有简单的语法来访问对象中的每个属性键,这使开发人员可以进一步操作或访问对象的属性。

枚举顺序

JavaScript for...in 循环的迭代顺序不能保证在不同的 JavaScript 引擎之间相同。

多功能性

for...in 循环可以遍历自定义用户定义对象以及内置对象类型(如 object、array、string 等)的属性。

结论

JavaScript for...in 循环是遍历对象键的基本结构,它使开发人员能够为每个可枚举属性执行代码。

JavaScript for…in 循环 - 常见问题解答

JavaScript 中的 for-in 循环是什么?

在 JavaScript 中,for...in 循环是一种控制结构,用于迭代对象的枚举属性。使用此循环,您可以逐个访问对象的键。

for-in 循环如何工作?

在 JavaScript 中,for...in 循环用于遍历对象的属性。对于每个属性,将键分配给指定的变量并执行代码块。

for…in 和 for…of 循环之间有什么区别?

for...in 和 for...of 循环在 JavaScript 中的主要区别是:for...in 循环迭代对象的枚举字符串属性,而 for...of 循环迭代可迭代对象(如数组、字符串等)的值。