肉渣教程

JS For循环

上一节 下一节

JavaScript循环语句可以让程序重复运行代码块中的语句。


说for循环前,先说个知识点,比如某个数字变量i,目前等于整数0;此时使用一个语句i++;,则等价于i += 1;;也等价于i = i + 1;,这些语句都代表变量i累加1


JavaScript 循环语句

举一个例子,来说明JS循环语句的必要性;如下所示,要按顺序输出数组的每一项。

text += gangs[0] + "<br>"; 
text += gangs[1] + "<br>"; 
text += gangs[2] + "<br>"; 
text += gangs[3] + "<br>"; 
text += gangs[4] + "<br>"; 
text += gangs[5] + "<br>";

上面的这个数组比较短,只有6项,所以可以手动;那若是是成百上千,难道都手动依次输出吗?这时,就可以使用JavaScript循环语句。

var i;
for (i = 0; i < gangs.length; i++) { 
  text += gangs[i] + "<br>";
}

运行一下


循环语句的种类

JavaScript有如下几种常用的循环语句:

  • for语句
  • for/in语句
  • while语句
  • do/while语句

For 循环

for语句的语法:

for ( 语句1; 语句2; 语句3; ) {
        代码块
}


语法解析:

  • 语句1 - 只在循环第一次运行前执行,一般用于变量初始化
  • 语句2 - 是一个条件表达式,该表达式成立,循环才会继续进行;若不成立,则结束循环
  • 语句3 - 每次循环执行后,运行一次语句3,一般用来累加步长


示例:

var i, text;
var gangs = ["太平天国", "义和团", "天地会", "日月神教", "红花会", "学生会"];

for (i = 0; i < gangs.length; i++) { 
  text += gangs[i] + "<br>";
}

运行一下


示例解析:

  • 语句1 - i=0,第一次循环前的i被初始化为0,i会在每次循环中作为数组的索引位置数字
  • 语句2 - i<gangs.length, 这是一个条件表达式,只要i没有超出数组的最大索引位置,则会一直执行下去;若不成立,则结束循环
  • 语句3 - i++的意思就是每次循环执行后,变量i的值加1,i++i=i+1的简写

for/in 语句

for/in语句的语法:

for ( i in obj ) {
        代码块
}


语法解析:

  • obj指代Object类型的一些对象,如Array数组、Object对象
  • 若是数组,变量i就会遍历数组,每轮循环中,i等于相应的索引数字
  • 若是Object对象(特指专否中归纳的那种字典类型对象),则会以变量i遍历obj的所有的预设属性(从字典的角度来看,就是遍历所有的键
  • 变量i的变量名是可以随意自定义的,提前声明好即可


示例1:

var gangs = ["太平天国", "义和团", "天地会", "日月神教", "红花会", "学生会"];
var text = "";
var i;

for (i in gangs) {
  text += i + " ---> " + gangs[i] + "<br>";
}

运行一下


示例2:

var gangs = { "taiping": "太平天国", 
              "yihe": "义和团", 
              "tiandi": "天地会",
              "riyue": "日月神教",
              "honghua": "红花会", 
              "xuesheng": "学生会" };              
var text = "";
var i;

for (i in gangs) {
  text += i + " ---> " + gangs[i] + "<br>";
}

运行一下


JS For循环

上一节 下一节