推荐答案
-- -------------------- ---- ------- -- -- --- -- --- ---- - - -- - - -- ---- - --------------- - -- -------- -- ----- --- - - -- -- -- -- -- - -- --- ---- --- -- ---- - --------------- - -- - - ---------- - -- -------- -- ----- --- - --- -- -- -- --- --- ---- ----- -- ---- - ------------------- -
本题详细解读
基本 for 循环
基本 for
循环是最常见的循环结构,通常用于遍历数组或执行固定次数的操作。其语法如下:
for (初始化; 条件; 迭代) { // 循环体 }
- 初始化:在循环开始前执行一次,通常用于声明和初始化循环变量。
- 条件:每次循环开始前都会检查这个条件,如果为
true
,则执行循环体;如果为false
,则退出循环。 - 迭代:在每次循环结束后执行,通常用于更新循环变量。
for...in 循环
for...in
循环用于遍历对象的可枚举属性。其语法如下:
for (let key in object) { // 循环体 }
- key:每次循环时,
key
会被赋值为对象的当前属性名。 - object:要遍历的对象。
需要注意的是,for...in
循环不仅会遍历对象自身的属性,还会遍历其原型链上的属性。为了避免遍历到原型链上的属性,可以使用 hasOwnProperty
方法进行过滤。
for...of 循环
for...of
循环用于遍历可迭代对象(如数组、字符串、Map、Set 等)。其语法如下:
for (let value of iterable) { // 循环体 }
- value:每次循环时,
value
会被赋值为可迭代对象的当前元素。 - iterable:要遍历的可迭代对象。
for...of
循环是 ES6 引入的新特性,它提供了一种更简洁的方式来遍历数组和其他可迭代对象,而不需要使用索引或 for...in
循环。