for Each for of for in 的区别
时间: 2023-10-20 13:29:00 浏览: 128
`for`、`forEach`、`for...of` 和 `for...in` 都是 JavaScript 中用于循环遍历数组或对象的语句,它们的区别如下:
- `for` 循环:是最基本的循环语句,可以遍历数组和对象。`for` 循环可以通过下标访问数组元素或者通过对象的属性名称访问属性值。
- `forEach` 循环:是数组中的一个方法,只能用于遍历数组,不能遍历对象。`forEach` 循环会自动遍历数组中的每个元素,并且可以在函数中访问每个元素的值、索引和数组本身。
- `for...of` 循环:是 ES6 新增的特性,可以用于遍历可迭代对象(iterable),如数组、字符串、Set、Map 等。`for...of` 循环会自动遍历可迭代对象中的每个元素,不需要使用下标或者属性名进行访问。
- `for...in` 循环:用于遍历对象中的可枚举属性,不能遍历数组。`for...in` 循环会遍历对象中的所有可枚举属性,包括原型链上的属性,需要使用 `hasOwnProperty()` 方法判断属性是否属于对象本身。
总之,`for` 循环是最基本的循环语句,可以遍历数组和对象;`forEach` 循环是数组中的一个方法,只能用于遍历数组;`for...of` 循环是 ES6 新增的特性,可以用于遍历可迭代对象;`for...in` 循环用于遍历对象中的可枚举属性。在使用时需要根据不同的需求选择不同的循环语句。
阅读全文