JavaScript 循环语句全集解析

计算机最起初的功能就是用来计算的,特别是那些重复的工作要用到循环。JavaScript 循环经常用到,有以下几种方式。

一、for循环

语法:

for (语句 1; 语句 2; 语句 3)
{
    被执行的代码块
}

语句1是初始条件;语句2是结束条件,也就是判断条件;语句3是递增条件。

例如:

var sum=0;
for(var i=0; i<1000; i++){
sum=sum+i;
}
console.log(sum);//499500

使用JavaScript
循环一下子算出来了。

除了用于计算之外,循环最常用的地方是利用索引来遍历数组。

例如:

var arr = ['apple','banana','cat','dog','egg','foot','god'];
var i;
for(i=0; i<arr.length; i++){
console.log(arr[i]);
}
for循环遍历数组-01

简单的几行代码就可以把数组里面的元素遍历一次。

也许你会问,既然for()里面的是循环条件,如果我什么条件也不添加,会怎么样呢?

如果for(
)没添加任何条件,那应该是这样书写的for(;;)因为条件是空,可是还得保持3个条件的语法格式。

例如:

for(;;){
if(i>1000){
break; 
}
sum=sum+i;
console.log(sum)
}

 然后就会发现,测试的浏览器卡住了,因为for(;;)会进入死循环,也就是会无线循环。浏览器都要崩溃了。这时候要在循环体里面添加break来退出循环。

二、for…in…循环

for…in…用户遍历对象的属性的循环语句。可以把对象的所有属性罗列出来。

例如:

var project = {
name:'小明',
age:18,
school:'附中',
father:'大明',
mother:'阿芳',
'best-friend':'小红',
address:'北京路',
phone:'13314756284'
}
for(var i in project){
console.log(i);
}
for in遍历对象属性-02

因为我们知道,对象会继承父类的属性,所以当我们想要遍历出对象属性的时候,过滤掉那些继承的属性,只得出改对象的属性,我们应该用hasOwnProperty( )方法。

例如:

for(var j in project){
if(project.hasOwnProperty(j)){
console.log(j)
}
}

添加过滤添加就可以。

上面是遍历出对象的属性,如果把for…in…用在数组中,得到的是数组的索引。

例如:

var arr1 = ['apple','banana','cat','dog','egg','foot','god'];
for(var i in arr1){
console.log(i)
}

for in遍历数组属性-03

要注意的是,这种方式的出来的索引不是number类型的,而是字符串类型的,因为索引也是数组的属性。

我们也可以用这种索引的方式访问数组。

例如:

var arr1 = ['apple','banana','cat','dog','egg','foot','god'];
for(var i in arr1){
console.log(arr1[i])
}

三、while循环

For循环有三个条件,二、而while循环只有一个条件,只要满足就继续循环,一旦不满足就结束循环,比较好理解。

例如:

var i =0;
var sum=0;
while(i<1000){
sum=sum+i;
i+=1;
}
console.log(sum)//499500

当i=999时,进行while判断,小于1000,继续循环,循环体中i +1 = 1000,回头继续进行while判断,发现1000不小于1000,不满足条件,所以退出循环。

四、do…while循环

do…while是先执行混循环体再进行判断条件是否满足,所以无论如何,循环体都会至少执行一次。

var i = 0;
var sum = 0;
do{
sum=sum+i;
i+=1;
}while(i<1000)
console.log(sum)//499500
微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?