【if-else结构】
 1、结构的写法:

 if(判断条件){
条件为true时,执行if{}
} else{
条件为false时,执行else{}
}

2、注意事项:
 ① else{}语句块,可以根据情况进行省略。
 ② if和else后面的{}可以省略,但是省略后,if和else后面只能跟一条语句,所以不建议省略{}。
 3、 if中的()中的判断条件,支持的情况:
① Bolleam:true为真,false为假;
② String:空字符串为假,所有非空字符串为真;
③ Number:0为假,一切非零数字为真;
④ null undefined nan:全为假;
⑤ Object:全为真;

【多重if、阶梯if结构】
1、结构写法:

 if(判断条件一){
条件一成立时,执行if{}
} else if(条件二){
条件一不成立&&条件二成立,执行操作
}else{
上述条件都不成立时,执行操作
}

2、多重if结构中,各个判断条件是互斥的,执行选择其中一条路执行,遇到正确选项并执行完以后。直接跳出结构

不在判断后续分支。

【嵌套if结构】
1、结构写法:

 if(条件一){
条件一成立
if(条件二){
条件一成立&&条件二成立
}else{
条件一不成立&&条件二不成立
}
}else {
条件一不成立
}

2、在嵌套if结构中,如果省略{},则else结构永远属于离他最近的一个if结构。

3、嵌套结构可以多层嵌套,但是一般不推荐超过3层。能多重if结构的一般不推荐使用嵌套结构。
【switch-case结构】
1、结构写法:

 switch (){
case value:
break;
default:
break;
}

2、注意事项

①、switch结构()中的表达式,可以使用各种js支持的数据类型。
②、switch结构在进行判断的时候,使用的===判断。
③、case后面的表达式可以是各种数据类型,但是值要求各不相同,否则也只会执行第一个case。
④、break作用:
执行完case代码后,跳出当前switch结构
缺少break后果:
从第一个正确的case项开始,执行后面所有的case和default;
原因:
⑤、switch结构在进行判断的时候,只会判断一次正确答案,当遇到正确的的case之后,将不会判断后续的项目
⑥、switch结构的执行效率比多重if快,再多路分支结构中,推荐优 先使用switch结构。

【循环结构 的执行步骤】
1、声明循环变量
2、判断循环条件
3、执行循环体操作
4、更新循环变量
然后循环执行2-4,直到条件不成立时,跳出循环。
while()中的表达式,运算结果可以是各种类型,但是最终都会转为真假,转换规则同if结构。
while循环的特点:先判断,后执行;
do-while循环特点:先执行,后判断,即使初始条件不成立,do-while循环也要执行一次。

【for循环】
1、for循环有三个表达式:①声明循环变量②判断循环条件③更新循环标量;
三个表达式之间用;分隔;
for循环三个表达式都可以省略,但是两个;缺一不可;
2、for循环执行特点:先判断,后执行,与while相同;
3、 for循环三个表达式都可以有多个部分组成;第二部分多个判断条件用|| &&链接,第一三部分用,分隔;

【循环控制语句】
1、break:跳出本层循环,继续执行循环后面的语句。
如果循环有多层嵌套,则break只能跳出一层。
2、continue:跳过本次循环剩余的代码,继续执行下一次循环。
① 对于for循环,continue之后执行的语句,是循环变量更新语句i++。
② 对于while、do-while循环,continue之后执行的语句,是循环条件判断;
因此,使用这两个循环时,必须将continue放在i++之后使用,否则,continue将跳过i++导致死循环。
3、return:直接结束当前循环,不再执行下面的代码;多用于函数;

以下是三位水仙花数和斐波那契序列的前20项的程序

 <script type=" text/javascript">

             /*找出所有的水仙花数*/
for ( var i = 100;i < 1000;i++) {
var a = i%10;
var b = parseInt(i/10%10);
var c = parseInt(i/100);
if (i == a*a*a + b*b*b + c*c*c) {
document.write(i+"<br>");
}
}
</script>

 <script type="text/javascript">
/*
输入斐波那契序列的前20项:
1、1、3、 5、 8、 13、 21、 34······
*/ var a=1;
var b=1;
var c;
document.write("1 1 ");
for (var i=3;i<=20;i++) {
c=a+b;
document.write(c+" ");
if(i%5==0)document.write("<br>")
a=b;
b=c;
} </script>

刘强1109 JavaScript基础二(分支与循环结构)的更多相关文章

  1. 2、JavaScript 基础二 (从零学习JavaScript)

     11.强制转换 强制转换主要指使用Number.String和Boolean三个构造函数,手动将各种类型的值,转换成数字.字符串或者布尔值. 1>Number强制转换 参数为原始类型值的转换规 ...

  2. python分支和循环结构

    本文收录在Python从入门到精通系列文章系列 1. 分支结构 1.1 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构.然而仅有顺序结构并不能解决 ...

  3. Javascript基础二(程序的三大结构)

    程序的三大结构: 顺序结构,选择结构,循环结构 程序的单分支结构-if语句:       当条件判断为真true时,执行花括号内的语句,如果条件为假false,跳过花括号内的语句       if(条 ...

  4. shell分支与循环结构

    1. 条件选择 1.1 条件判断分支介绍 格式 if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMM ...

  5. Java语法基础(四)----循环结构语句

    一.循环结构: 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则 ...

  6. JavaScript 基础(二) - 创建 function 对象的方法, String对象, Array对象

    创建 function 对象的两种方法: 方式一(推荐) function func1(){ alert(123); return 8 } var ret = func1() alert(ret) 方 ...

  7. javascript基础二数据类型

    1.数据类型 javascript中的基本数据类型有4中,undefined,number,string,boolean 1.1 typeof关键字 typeof关键字可以获取一个变量的的类型.先举个 ...

  8. JavaScript 基础二

    JavaScript 事件处理程序就是一组语句,在事件(如点击鼠标或移动鼠标等)发生时执行 ●当事件之间互相影响时,需要有个先后顺序,这时我们声明一个Bool值来做约束 浏览对象: window 对象 ...

  9. JavaScript 基础(二)数组

    字符串, JavaScript 字符串就是用'' 和""括起来的字符表示. 字符字面量, \n 换行, \t 制表, \b 退格, \r 回车, \f 进纸, \\ 斜杠,\' 单 ...

随机推荐

  1. 【京东账户】——Mysql/PHP/Ajax爬坑之添加购物车

    一.引言 做京东账户项目中的购物车模块,功能之一就是添加购物车.要用到的是Apach环境,Mysql.PHP以及Ajax. 预计效果:用户点击->"加入购物车"  添加成功 ...

  2. angularjs——路由篇

    路由 路由功能是由 routeProvider服务 和 ng-view 搭配实现,ng-view相当于提供了页面模板的挂载点,当切换URL进行跳转时,不同的页面模板会放在ng-view所在的位置; 然 ...

  3. 【Python练习1】统计一串字符中英文字母、空格、数字和其他字符的个数

    练习思路: 1.输入一串字符 2.筛选出字符中的英文字母并统计 3.筛选出字符中的空格并统计 4.筛选出字符中的数字并统计 5.筛选出字符中的其他字符并统计 代码实现: def msg(s): abc ...

  4. 【JVM命令系列】jmap

    命令基本概述 Jmap是一个可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本.打印出某个java进程(使用pid)内存内的,所有'对象'的情况(如:产生那些对象,及其数量 ...

  5. HDU2048 HDU2049 组合数系列 错排

    HDU1465HDU2048HDU2049#include<cstdio> #include<cstdlib> #include<iostream> #includ ...

  6. 【特效】给元素循环添加class

    经常会遇到给元素循环添加class的效果,例如下面这个图 每个模块的背景色和图标都不相同,但是呢,模块的数量又不确定,说不定有几十个,那我不能设计几十个图标吧,所以,可以做成每9个一循环,也就是第10 ...

  7. 通过nginx的fastcgi_param来设置环境变量

    在nginx配置文件中,可以在nginx总体的配置文件nginx.conf中,也可以在单独的网站配置环境中进行设置,如:www.tomener.com.conf 在配置环境server段locatio ...

  8. sql server 2008 18456错误

    来自:http://blog.csdn.net/qishuangquan/article/details/6024767 百度搜18456错误几乎只能搜到一篇文章,并不是说结果条数,而是所有的文章都是 ...

  9. openwrt下 samba设置

    1. 增加用户: 可以手工直接修改 /etc/passwd, 增加一行: samba:x:102:100::/home/samba:#也可命令如下opkg updateopkg install sha ...

  10. Android基础知识04—Activity活动之间传递数据

    ------活动之间传递数据------ 向下一个活动传递数据: Intent中提供了一系列的putExtra()方法,可以把数据暂存到Intent中,启动另一个活动的时候就可以取出来. 代码: (存 ...