JavaScript学习-for循环

521 阅读3分钟

这是我参与11月更文挑战的第7天,活动详情查看:2021最后一次更文挑战

前几篇文章学习了几个 JavaScript 并不完美但是不影响其运行的神奇"bug":

本篇记录了学习 JavaScript 的 for 循环 相关

JavaScript for 循环

for 循环 是一个相对于 while 循环稍短且更加综合的循环形式, 由于这个模式用到比较多, 所以有了 for 循环这个更简单的形式.

for 语句用来创建一个循环,它包含了三个可选的表达式,这三个表达式被包围在圆括号之中,使用分号分隔,后跟一个用于在循环中执行的语句(通常是一个块语句)。

一个 for 循环的语法:

for ([initialization]; [condition]; [final - expression]) {
  statement // 循环体
}

for 循环体的各个参数的含义:

  • initialization

    表示一个表达式 (包含赋值语句) 或者变量声明。典型地被用于初始化一个计数器。该表达式可以使用 var 或 let 关键字声明新的变量,表达式的结果无意义。

  • condition

    表示一个条件表达式被用于确定每一次循环是否能被执行的循环条件。如果该表达式的结果为 true,statement 将被执行。这个表达式是可选的。如果被忽略,那么就被认为永远为真。如果计算结果为假,那么执行流程将被跳到 for 语句结构后面的第一条语句。

  • final-expression

    每次循环的最后都要执行的表达式。执行时机是在下一次 condition 的计算之前。通常被用于更新或者递增计数器变量。

  • statement

    只要 condition 的结果为 true 就会被执行的语句。要在循环体内执行多条语句,使用一个块语句({ ... })来包含要执行的语句。没有任何语句要执行,使用一个空语句(;)。

小例子:

// 定义一个空字符串
let emptyStr = ''
for (let number = 0; number <= 9; number++) {
  // 依次进行叠加 直到所有满足条件都循环一遍
  emptyStr += number
}
console.log(emptyStr) // ->  "0123456789"

for 循环的 for关键字后面的括号中需包含两个分号进行分割条件: 第一个分号前面的部分是初始化一个变量, 通常通过定义绑定来实现; 而这两个个分号之间是用来检查判断条件是否成立的, 为是否要继续循环的判断表达式。 最后一个部分表示要迭代更新循环的状态。

通常情况下 for 循环比 while 结构更精炼, 清晰.

let result = 1
// 定义一个计数器, 控制循环进行迭代的次数
for (let counter = 0; counter < 10; counter++) {
  result = result * 2
}
console.log(result) /// -> 1024 即 2的10次方 循环了 10次