文档章节

JavaScript的循环

青慕
 青慕
发布于 2017/09/07 17:42
字数 480
阅读 4
收藏 0

1. 条件判断

JavaScript和java一样中使用if() { . . . } else { . . . } 来进行条件判断

多条件判断:通常我们把else if 连写在一起,来增加可读性。注意最后一个单独的else不要省略掉{}。

注意:if . . . else . . . 语句的执行特点是二选一,在多个if . . . else . . . 语句中,如果某个条件成立,则后续就不再继续判断了。

JavaScript把 null , undefined, 0 , Nan 和空字符串''视为 false,其他值一概视为 true。

2. 循环

for循环:

for循环最常用的地方是利用索引来遍历数组

var arr = ['apple','google','microsoft'];
var i,x;
for(i=0;i<arr.length;i++){
    x = arr[i];
    alert(x);
}

 

for循环的3个条件都是可以省略的,如果没有退出循环的判断条件,就必须使用break语句退出循环,否者就是死循环

var = 0;
for( ; ; ){
   if(x > 100){
       break; // 通过if判断来退出循环
   }
    x ++;
}

 

for循环的一个变体是for . . . in 循环,它可以把一个对象的所有属性依次循环出来

var o = {
    name: 'wuzao',
    age: 20,
    sex: '男'
}
for(var key in o){
     alert(key);  //  "name", "age", "sex"
}




// 过滤掉对象继承的属性, 用hasOwnProperty()来实现:
var o = {
    name: 'wuzao',
    age: 20,
    sex: '男'
}
for(var key in o){
     if(o.hasOwnProperty(key)){
       alert(key);  //  "name", "age", "sex"\
     }
}

 

由于Array也是对象,而它的每个元素的索引被视为对象的属性,所以for . . . in循环可以直接循环出Array的索引

var arr = ['a' , 'b' , 'c'];
for(var i in arr){
    alert(i);   // '0' ,'1' ,'2'
    alert(a[i]);   // 'a' ,'b' ,'c'
}

// 注意for . . . in对Array的循环得到的是String而不是Number。

 

while循环只有一个判断条件,条件满足,就不断循环,条件不满足是则退出循环。

do . . . while和while循环唯一的区别在于,不是在每次循环开始的时候判断条件,而是在每次循环完成的时候判断条件。

© 著作权归作者所有

共有 人打赏支持
青慕
粉丝 4
博文 15
码字总数 7496
作品 0
贵阳
程序员
JavaScript的基本使用

一、JavaScript的简单介绍   JavaScript是一种属于网络的脚本语言(简称JS),已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaS...

码农47
03/15
0
0
深入理解JavaScript之Event Loop

前言 最近阅读《高性能JavaScript》时,第六章谈到“通过定时器将JavaScript执行代码的控制权先让给浏览器用于更新UI状态,然后再将控制权交回给JavaScript代码,这样就可以使得页面更为流畅...

天天天天才樱木花道
06/29
0
0
Javascript的事件模型和Promise实现

1. Javascript的运行时模型——事件循环 JS的运行时是个单线程的运行时,它不像其他编程语言,比如C++,Java,C#这些可以进行多线程操作的语言。当它执行一个函数时,它只会一条路走到黑,不...

远方无风
07/12
0
0
JavaScript 基础 --- (数据类型/循环/条件)

一、js 输出 1.window.alert() 警告框 2.document.write() 写到 HTML 文档中 3.innerHTML 写到 HTML 元素 4.console.log() 写到浏览器的控制台 二、js 语句与注释 1. ; (var a = 1;) ;表...

姜白告
06/19
0
0
这一次,彻底弄懂 JavaScript 执行机制

本文的目的就是要保证你彻底弄懂javascript的执行机制,如果读完本文还不懂,可以揍我。 不论你是javascript新手还是老鸟,不论是面试求职,还是日常开发工作,我们经常会遇到这样的情况:给...

ssssyoki
2017/11/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

腾讯投资最高1.75亿美元正式进军菲律宾移动支付市场

菲律宾长途电话公司(PLDT)公司今日宣布,中国互联网巨头腾讯和私募股权公司KKR将获得该公司旗下金融科技公司Voyager Innovations的少数股权。 PLDT在一份声明中称:“腾讯和KKR最多将分别收...

linuxCool
19分钟前
2
0
正则介绍及grep/egrep用法

10月16日任务 9.1 正则介绍_grep上 9.2 grep中 9.3 grep下 扩展 把一个目录下,过滤所有*.php文档中含有eval的行 grep -r --include="*.php" 'eval' /data 正则介绍 正则就是一串有规律的字符...

hhpuppy
30分钟前
1
0
J2Cache 中使用 Lettuce 替代 Jedis 管理 Redis 连接

一直以来 J2Cache 都是使用 Jedis 连接 Redis 服务的。Jedis 是一个很老牌的 Redis 的 Java 开发包,使用很稳定,作者维护很勤勉,社区上能搜到的文章也非常非常多。算是使用范围最广的 Redi...

红薯
今天
12
0
一个可能的NEO链上安全随机数解决方案

0x00 困境 链上安全随机数生成应该算是一个比较蛋疼的问题,哪怕你的系统再牛逼,合约程序困在小小的虚拟机里,哪怕天大的本事也施展不开。 更悲催的是,交易执行的时候,是在每一个节点都执...

暖冰
今天
1
0
【大福利】极客时间专栏返现二维码大汇总

我已经购买了如下专栏,大家通过我的二维码你可以获得一定额度的返现! 然后,再给大家来个福利,只要你通过我的二维码购买,并且关注了【飞鱼说编程】公众号,可以加我微信或者私聊我,我再...

飞鱼说编程
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部