上一节我们介绍了函数,本小节我们介绍一下流程控制语句,对于任何一门编程语言来说,流程控制都是非常重要的,也就是我们常说的顺序结构、选择结构和循环结构。

************选择结构***************

1.Javascript中用条件语句来实现选择结构,它提供的选择结构主要是if语句、if....else语句和if...else if ...else语句,还有一个switch语句,和PHP很像。

2.这些语句都比较基础,因此我们这里只给出if...else if..else的形式的伪代码如下:

if (condition1)
{
当条件 1 为 true 时执行的代码
}
else if (condition2)
{
当条件 2 为 true 时执行的代码
}
else
{
当条件 1 和 条件 2 都不为 true 时执行的代码
}

3.下面是switch语句的伪代码:

switch(n)
{
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
n 与1和2 不同的时候执行的代码
}

4.需要说明的是:这里的break用于跳出该switch语句,default用于当上面的内容都不会被匹配到的时候再去执行的代码。

************for循环************

1.js的for循环和C、C++、Java、PHP的for循环都是一样的,都是下面的形式,先看伪代码:

for(初始条件;最终判断条件;单步执行增量){
//每次循环执行的代码
}

2.然后就是一个实例:

var x = 0;
for(var i = 0;i <5;i++){
x += i;
}

3.这样之后的x就是10,它是计算了从0加到4的和。

4.我们可以用for in循环来遍历对象的属性,比如如下代码:

var msg = "";
var person = {name:"辛星",age:24};
for(x in person){
msg = msg + person[x];
}
alert(msg);

5.上面的.person是一个对象,关于对象我们后面还会说明,这里我们看到x是作为person的一个属性出现的,person调用这个属性就像我们在其他编程语言中使用数组那样的用法。

***************while循环******************

1.while语句的语法的伪代码:

while(条件){
//功能代码
}

2.那我们根据此伪代码写出它的真正的代码示例:

var sum = 0;
var i = 0;
while (i <10){
sum += i;
i++;
}
alert(sum);

需要注意的一点就是这里的i++不要忽略,否则代码会进入死循环。

3.同理还有do...while循环语句,伪代码如下:

do{
//功能代码;
}while(条件);

4.do...while循环和while循环的唯一区别就是do...while会先循环一次,然后判断条件,其实,我们可以用while循环来代替它,因此有些语言就舍弃了do...while语句,但是我们的js语言还是支持的。

**************小结**************

1.js代码作为脚本,它的程序执行顺序是自上至下的,它不会像C语言那样从main函数开始。

2.本小节讲到了三种顺序和几个语句,有其他编程语言基础的话,很容易理解,而且js本身就仿照了c 的语法,就更容易看懂了。

2014年辛星完全解读Javascript第四节 流程控制语句的更多相关文章

  1. 2014年辛星完全解读Javascript第七节 数组和对象

    由于Javascript是脚本语言,因此,使用起来非常方便,数组的使用也是比较简单的,下面我们就主要介绍一下Javascript中数组的介绍,以及上一节中没有完成的对象的介绍. *********** ...

  2. 2014年辛星完全解读Javascript第六节 对象

    随着面向对象的普及,现在很多语言都在支持面向对象,Javascript也不例外,所谓对象,就是拥有属性和方法的数据.这里的属性其实就是变量,这里的方法,其实就是函数.但是Javascript的面向对象 ...

  3. 2014年辛星完全解读Javascript第五节 break和continue与错误处理

    先说一下break和continue的主要用法吧,break用于跳出循环,continue用于跳过该循环中的一个迭代.简单的说,就是break直接从该语句跳出,但是continue不会跳出该循环语句, ...

  4. 2014年度辛星css教程夏季版第四节

    接下来的这一节我计划讲解的是超链接和列表的样式,然后我们做出一个导航栏出来,其实导航栏是非常常见的,但是我们这里做得这个有点并不那么完善,等我们学完了css之后再完善它. ************** ...

  5. 2014年辛星完全解读Javascript第一节

    ***************概述*************** 1.Javascript是一种原型化继承的基于对象的动态类型的脚本语言,它区分大小写,主要运行在客户端,用户即使响应用户的操作并进行数 ...

  6. 2014年辛星完全解读Javascript第八节 json

    json是JavaScript Object Notation的简写,它是一种轻量级的数据交换格式,而且表达上很容易靠字面去理解.json是用于存储和传输数据的格式,通常用于向服务器端传递数据. ** ...

  7. 2014年辛星完全解读Javascript第三节

    经过第一节的入门和第二节的运算符,那么接下来我们就可以学习Javascript的函数了,当然了,不管大家之前学习的是什么编程语言,都会有函数的概念,如果大家学的是Pascal,还会有”过程“的概念,但 ...

  8. 2014年辛星完全解读Javascript第二节

    本小节我们讲解一下Javascript的语法,虽然js语言非常简单,它的语法也相对好学一些,但是不学总之还是不会的,因此,我们来一探究竟把. ********注释************* 1.我们通 ...

  9. 2014年度辛星html教程夏季版第四节

    我们前面也涉及了HTML中的一些东西,接下来我们要涉及到图像了,如果没有图像,即使文字的样式再多,再复杂,终归还是单调的,我们就需要用图片来给我们的网页增加更多的表现形式. ************* ...

随机推荐

  1. Java基础知识强化之网络编程笔记23:Android网络通信之 Volley(Google开源网络通信库)

    联合网上资料学习:http://www.open-open.com/lib/view/open1451223702339.html 一.Volley的介绍 1. Volley简介 在这之前,我们在程序 ...

  2. TextFiled 中输入金额

    要求: 输入的金额不能超过六位, 小数点后面只能输入两位小数 如果 textFIled  中第一位输入的是0 ,后面必须输入小数点,否则禁止输入 用到 textfiled代理方法 #pragma ma ...

  3. java中的静态方法

    静态方法是属于类的,内存必须为它分配内存空间,这个空间一直由静态方法占用,内存管理器不会由于静态方法没有被调用而将静态方法的存储空间收回,这样如果将所有的方法都声明为静态方法,就会占用大量的内存空间, ...

  4. ubunutu_install_sublime_china

    保存下面的代码到文件sublime_imfix.c(位于~目录) #include <gtk/gtkimcontext.h> void gtk_im_context_set_client_ ...

  5. jQuery中的经典动画

    show()方法和hide()方法是jQuery中的基本动画方法,hide()方法等于将css()方法设置display属性为none.如何让元素动起来呢,我们可以在show和hide里加入slow, ...

  6. Redis 命令 - Sets

    SADD key member [member ...] Add one or more members to a set 127.0.0.1:6379> SADD foo hello (int ...

  7. Spring 数据源配置三:多数据源

    在上一节中,我们讲述了多数据的情况: 1. 数据源不同(数据库厂商不同, 业务范围不同, 业务数据不同) 2. SQL mapper 文件不同, 3. mybatis + 数据方言不同 即最为简单的多 ...

  8. C# WCF学习笔记(二)终结点地址与WCF寻址(Endpoint Address and WCF Addressing) WCF中的传输协议

    URI的全称是 Uniform Rosource Identifire(统一资源标识),它唯一标识一个确定的网绐资源,同时也表示资源所处的位置及访问的方式(资源访问所用的网络协议). 对于Endpoi ...

  9. ansible安装(批量执行命令

    rpm安装 下载epl源 :  Download the latest epel-release rpm from:http://dl.fedoraproject.org/pub/epel/6/x86 ...

  10. python的全局变量玩法还挺特别的

    global g_arr def add(): #global g_arr g_arr = [] g_arr.append(1) add() print g_arr #你将收获一个NameError错 ...