二维码

JavaScript 用于输入

JavaScript 用于输入


For In 循环

JavaScript for in语句遍历 Object 的属性:

1
2
3
for (key in object) {  
  // *code block to be executed*
}
1
2
3
4
5
6
const person = {fname:"John", lname:"Doe", age:25};  

let text = "";
for (let x in person) {
  text += person[x];
}

示例解释

  • for in 循环遍历 person 对象
  • 每次迭代返回一个 (x)
  • 密钥用于访问密钥的值
  • 键的值为 person[x]

对于 In Over 数组

JavaScript for in语句还可以遍历 Array 的属性:

1
2
3
for (variable in array) {  
  code
}
1
2
3
4
5
6
const numbers = [45, 4, 9, 16, 25];  

let txt = "";
for (let x in numbers) {
  txt += numbers[x];
}

如果索引顺序很重要,则不要在 Array 上使用 for

索引顺序取决于实现,并且可能无法按预期的顺序访问数组值。

当顺序很重要时,最好使用 for 循环、for of 循环或 Array.forEach()


Array.forEach()

forEach()方法为每个数组元素调用一次函数(回调函数)。

1
2
3
4
5
6
7
8
const numbers = [45, 4, 9, 16, 25];  

let txt = "";
numbers.forEach(myFunction);

function myFunction(value, index, array) {
  txt += value;
}

请注意,该函数有 3 个参数:

  • 项目值
  • 项目索引
  • 数组本身

上面的示例仅使用 value 参数。它可以重写为:

1
2
3
4
5
6
7
8
const numbers = [45, 4, 9, 16, 25];  

let txt = "";
numbers.forEach(myFunction);

function myFunction(value) {
  txt += value;
}