介绍循环之前,首先要说一下同样很重要的if-else结构,switch-case结构

①if-else结构
if(判断条件) {
条件为true时执行
}
else{
条件为false时执行
}
②if-else-if结构(阶梯if)
if(条件一){
条件一成立
}
else if( 条件二){
条件一不成立&&条件二成立
(else-if部分可以有多个)
}
else{
条件一不成立&&条件二不成立
}
③嵌套if结构
结构写法
if(条件一){
条件一成立
if(条件二){
}
else{
条件一成立&&条件二不成立
}
}
else{
条件一不成立
}

要注意的是

if()中的表达式,运算之后结果应该是
①boolean: true为真,false为假
②string: 非空字符串为真,空字符串为假
③null / NaN /Undefined 全为假
④object类型 全为真
⑤number: 0为假,非零为真

Switch-Case结构
1..结构写法:
switch(表达式){
case 常量表达式1:
语句一;
break;
case 表达式2:
语句二;
break;
.......
default:
语句N
}
2.注意事项:
①switch()中的表达式以及每个case后的表达式,可以为任何JS支持的数据类型(对象和数组除外)
②case后边的所有常量表达式必须各不相同,否则,只会执行第一个。
③case后的常量可以是任何数据类型;同一个switch结构的不同case,可以是多种不同的数据类型;
④switch在进行判断的时候,采用的是全等===判断
⑤break;执行完case代码后,跳出当前switch结构。
若缺少break:从正确的case项开始,依次执行所有的case和default
⑥switch结构在判断时,只会判断一次正确答案。当遇到正确的case项后,将不会再判断后续项。依次往下执行
用法示例:输入一个月份,判断属于哪个季度
                        var mon=Number(prompt("请输入月份:")); switch(parseInt((mon-1)/3)){case 0:document.write("第一季度");break;case 1:document.write("第er二季度");break;case 2:document.write("第三季度");break;case 3:document.write("第四季度");break;}

好了,下边就是要说的非常重要的循环了;首先来说一下while循环
【循环结构的步骤】
①声明循环变量
②判断循环条件
③执行循环体(while大括号中的所有代码)操作
④改变循环变量
⑤循环执行②③④
【JS中循环条件支持的数据类型】
支持JS中的所有类型
①boolean: true为真,false为假
②string: 非空字符串为真,空字符串为假
③null / NaN /Undefined 全为假
④object类型 全为真
⑤number: 0为假,非零为真

至于do-while循环:
先执行,再判断;即便条件不成立,也先执行一次。
最后来说一下最常用的 for循环
for(初始化循环变量;循环条件;修改循环变量的值){
}
for循环有三个表达式①定义循环变量②判断循环条件③更新循环变量,之间用分号隔开。
三个表达式可省略,但分号不可省略
特点:先判断,再执行
②for循环三个表达式均可以由多部分组成,中间用逗号分隔。但第二部分判断要用&&连接,最终结果需要为真/假
例如:
for(n=1,j=5; n<=5; n++,j--){
}

循环控制语句
1.break:终止本层循环,继续进行循环后边的语句。
当eak只循环有多层时,br会跳过一层循环
2.continue:跳过本次循环,继续执行下次循环
对于for循环,continue执行后,继续执行循环变量更新语句n++
对于while do-while,continue执行后,继续执行循环条件判断;所以在这两个循环中使用时,必须注意:continue一定要在n++后边使用
【循环嵌套】
外层循环转一次,内层循环转一圈
下边我们做个经典的图形题:用*打印一个菱形
              var f,g;for(f=1;f<=4;f++){for(g=1;g<=4-f;g++){document.write("&nbsp");}for(g=1;g<=2*f-1;g++){document.write("*");}document.write("<br />");}for(f=4;f>0;f--){for(g=4-f;g>=0;g--){document.write("&nbsp");}for(g=2*f-4;g>=0;g--){document.write("*")}document.write("<br />");}        

简单总结一下:
【嵌套循环特点】
外层循环控制行数,内层循环控制每行元素个数
【图形题思路】
1.确定图形一共几行,即为外层循环次数;
2.确定每行有几种元素,代表有几个内层循环;
3.每种元素有几个,即为每个内层循环的次数;(通常找出每种元素个数与行号的关系式,即为当前内层循环的最大值(从一开始))

转载于:https://www.cnblogs.com/cherishli/p/6681838.html

JS基础——循环很重要相关推荐

  1. js 基础 -- 循环、函数调用 、全局和局部变量、异常捕获、事件

    一:循环 for  for in <!DOCTYPE html> <html> <head><meta charset="utf-8" / ...

  2. JS基础-循环精灵图

    要实现的效果如下图: 按照之前精灵图的做法,是采用一个一个li进行background-position的修改,但是有了JS之后就可以执行循环操作来更改图片的位置. 这里给出精灵图图片: 根据索引号来 ...

  3. 前端-js基础-循环

    #博学谷IT学习技术支持 目录 for循环 双重for循环 while循环 do...while循环 continue 关键字 break 关键字 循环 循环的目的:在实际问题中,有许多具有规律性的重 ...

  4. js基础-循环结构【003】

    循环结构 循环结构,就是根据某些给出的条件,重复的执行同一段代码 循环必须要有某些固定的内容组成 初始化 条件判断 要执行的代码 自身改变 WHILE 循环 while,中文叫 当-时,其实就是当条件 ...

  5. 【 js基础 Day2】js的流程控制:分支语句,循环.顺序结构

    复习 JavaScript简称为JS JavaScript是什么? 是一门脚本语言:不需要编译,直接运行 是一门解释性的语言:遇到一样代码就解释一行代码 C#语言是一门面向对象的语言,也是编译语言,是 ...

  6. js和php难度,有js基础和简单的php基础,但是学习nodejs还是很吃力

    相关的书和资料大家列举的很多了,绰绰有余,我简单分析下感受,希望有帮助. 不知道你有的js基础到底有多少:对象.方法.作用域.回调.链式调用.闭包.原型链这些概念到底理解的怎么样?这些没有深入的理解, ...

  7. JS基础:变量、函数、对象、数组、循环、选择(判断)

    JS基础:变量.函数.对象.数组.循环.选择(判断) js的三个组成部分 ECMAScript - ES - 语法规范 DOM - 文档对象模型 - API BOM - 浏览器对象模型 - API j ...

  8. 前端基础:通过 《心愿墙》实践js的循环程序

    前端基础:通过 <心愿墙>实践js的循环程序 曾有一段故事,故事是这样的. 记者:你放羊为了什么? 放羊娃:赚钱 记者:你赚钱为了什么? 放羊娃:娶媳妇 记者:你娶媳妇为了什么? 放羊娃: ...

  9. 构建node.js基础镜像_我如何使用Node.js构建工作抓取网络应用

    构建node.js基础镜像 by Oyetoke Tobi Emmanuel 由Oyetoke Tobi Emmanuel 我如何使用Node.js构建工作抓取网络应用 (How I built a ...

最新文章

  1. 异步系统接口调用流程图
  2. JAVA操作properties文件
  3. websphere7 linux 命令行安装(静默安装)
  4. R 回归 虚拟变量na_如何优雅地计算多变量
  5. python原始web与django框架 mvc模式开发
  6. rust原地复活_植物大战僵尸英雄锈铁螺栓新手卡组推荐 rustbolt多手牌陷阱恢复后期流卡组...
  7. 【转】学习理论,注重细节
  8. 提高开发效率,eclipse的常用快捷键、旁门左道、系统错误小贴士
  9. android studio sqlite操作代码片段
  10. 雅虎卖身不影响梅耶尔赚钱 她总薪酬2.2亿美元
  11. PDF以及PPT技巧
  12. 如何快速提高产品互动能力?
  13. centos 网络流量监控方法总结
  14. 北京消费扶贫双创中心启用 2000余种特色产品长期展销
  15. Resional Rose使用说明
  16. 6.28(HTML2)
  17. JAVA基础英语单词
  18. jsf取js变量_JSF页面中的JS取得受管bean的数据(受管bean发送数据到页面)
  19. 通过SQLSERVER重启SQLSERVER服务和计算机
  20. 广告投放方式:CPC、CPM、CPA、CPS、CPT

热门文章

  1. linux如何格式化u盘并挂载,Linux下 格式化U盘和挂载
  2. jieba 分词的三种模式
  3. 学习《apache源代码全景分析》之DSO概念
  4. 前后端分离项目部署(服务器或本地)
  5. 局域网内访问mysql数据库
  6. GitHub项目协作基本步骤
  7. ArrayBlockingQueue跟LinkedBlockingQueue的区别
  8. [MapReduce_add_4] MapReduce 的 join 操作
  9. linux systemd 使用
  10. word2013标题编号变成黑框