个性化阅读
专注于IT技术分析

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)
未经允许不得转载:srcmini » JavaScript 循环语句全集解析

评论 抢沙发

评论前必须登录!