2.2 循环嵌套

①.语法

    // 嵌套循环:循环内部包裹其他的循环
// 外侧循环执行一次,内部循环执行一轮
// 实例
for (var i = 0; i < 5; i++) {
for (var j = 0; j < 10; j++) {
console.log('我爱你')
}
}

②.案例

<script>
// 1.打印矩形 每次只能打印一颗*
for (var i = 0; i < 5; i++) {
for (var j = 0; j < 5; j++) {
document.write('*');
}
document.write('<br>');
} // 2.打印直角三角形
// *
// **
// ***
// ****
// *****
// 打印图片 外层控制行,内层控制列
for (var i = 0; i < 5; i++) {
for (var j = 0; j < i + 1; j++) {
document.write('*');
}
document.write('<br>')
} // 3.打印乘法口诀表
// 表格做法:
document.write('<table><tbody>');
// 行
for (var i = 1; i <= 9; i++) {
//每列
document.write("<tr>");
for (var j = 1; j <= i; j++) {
document.write('<td>' + j + '*' + i + '=' + i * j + '</td>');
}
document.write('</tr>');
// document.write('<br>');
}
document.write('</tbody></table>'); // 空格做法
// 行
for (var i = 1; i <= 9; i++) {
// 列
for (var j = 1; j <= i; j++) {
// i * j = ij
document.write(j + '*' + i + '=' + i * j + '&nbsp;&nbsp;');
}
document.write('<br>');
}
</script>

③.提升案例

<script>
// 输出1 - 100之间所有的素数(质数)(只能被1和自身整除的数, 但是1不是质数)
// 方法1 标志位思想
var flag = true;
for (var i = 1; i <= 100; i++) {
for (var j = 2; j < i; j++) {
if (i % j == 0) {
flag = false;
// 不是质数
break;
}
}
if (flag && i != 1) {
console.log(i);
}
flag = true;
} // 方法2 计数器思想
var num = 0;
for (var i = 1; i <= 100; i++) {
for (var j = 1; j <= i; j++) {
if (i % j == 0) {
num++;
}
}
// 判断能被整除两次的是质数
if (num == 2) {
console.log(i);
} // 重置num
num = 0;
} // 方法3
for (var i = 1; i <= 100; i++) {
for (var j = 1; j <= i; j++) {
if (i % j == 0) {
break;
}
if (i == j + 1) {
console.log(i);
}
}
if (i == 2) {
console.log(i);
}
} // 打印一个等腰三角形
// &nbsp;&nbsp;&nbsp;&nbsp;*
// &nbsp;&nbsp;&nbsp;***
// &nbsp;&nbsp;*****
// &nbsp;*******
// ********* // 行
for (var i = 1; i <= 5; i++) {
for (var j = 1; j <= 5 - i; j++) {
document.write('&nbsp');
}
for (var k = 1; k <= 2 * i - 1; k++) {
document.write('*');
}
document.write('<br>');
}
</script>

2.3 for循环非一般情况和死循环

①.for循环非一般情况

   // for循环非一般写法

    var i = 0
for (; i < 5;) {
console.log('我爱你');
i++;
}

for循环结束关键看条件表达式结果为真为假

②.死循环

    // 简写
// 简写不能省略;
for (; true;);
for (; ;);

2.4 while循环

①.语法

    var i =  0;
while (一般是条件表达式,结果是布尔值) {
循环体;
自增自减表达式;
}

②.执行流程

// 执行流程
// 1.首次执行
// 1-1 先执行初始化语句
// 1-2 执行条件表达式
// 条件为真,执行循环体,执行自增自减表达式
// 条件为假,跳出while循环 // 2.非首次执行
// 2-1 执行条件表达式
// 条件为真,执行循环体,执行自增自减表达式
// 条件为假,跳出while循环

③. for循环和while循环的适用场景

  1. for循环适合有明显循环次数的情况
  2. while循环适合有一个明确的结束条件的情况

2.5 do while循环

①.语法

    var i = 0;
do {
循环体
自增自减表达式
} while(一般是条件表达式,结果是布尔值);

②.执行流程

// 执行过程
// 1. 执行初始化表达式
// 2. 执行循环体和自增自减表达式
// 3. 执行条件表达式
// 结果为真,继续执行循环体
// 结果为假,跳出循环

③.while和do while的区别

  1. while 是先判断条件,后选择是否执行
  2. do while 是先执行一遍循环体,再去判断条件
  3. do while 保证了循环体至少被执行一次

2.6关键字continue

①.continue作用

  • 作用:在循环体中,结束本次循环,继续执行下一次循环

②.continue案例

    // 打印1~100以内所有的能整除3的数字
for (var i = 1; i <= 100; i++) {
if (!(i % 3 == 0)) {
continue;
}
// console.log(i);
} // 当if分支语句中只有一行语句时,可以省略大括号
for (var i = 1; i <= 100; i++) {
if (!(i % 3 == 0))
continue;
console.log(i);

2.7 关键字break

①.break作用

  • 在 switch case 中表示跳出switch分支语句
  • 在 循环中表示跳出最近的一层循环

②.break案例

    for (var i = 0; i < 3; i++) {
for (var j = 0; j < 3; j++) {
if (i == 1) {
break;
}
console.log(j, 'j');
}
console.log(i, 'i');
}

(四).JavaScript的循环结构的更多相关文章

  1. 九天学会Java,第四天,循环结构

    变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 这次我们讲Java的循环结构.循环结构在编程中广泛使 ...

  2. 四、 java循环结构

    for循环结构: 格式:①初始化条件;②循环条件;③迭代条件;④循环体 for(①;②;③){ //④ } 执行过程:①-②-④-③-②-④-③-...-④-③-②,直至循环条件不满足,退出当前的循环 ...

  3. JavaScript的循环结构和经典题目

    一.JS中的循环结构 循环结构的执行步骤1.声明循环变量:2.判断循环条件;3.执行循环体操作:4.更新循环变量:5.然后循环执行2-4,直到条件不成立,跳出循环. while循环()中的表达式,运算 ...

  4. Javascript开发技巧(JS中的变量、运算符、分支结构、循环结构)

    一.Js简介和入门 继续跟进JS开发的相关教程. <!-- [使用JS的三种方式] 1.HTML标签中内嵌JS(不提倡使用): 示例:<button onclick="javas ...

  5. Java基础(三):修饰符、运算符、循环结构和分支结构

    一.Java修饰符: Java语言提供了很多修饰符,主要分为以下两类:访问修饰符和非访问修饰符.修饰符用来定义类.方法或者变量,通常放在语句的最前端. 1.访问控制修饰符: Java中,可以使用访问控 ...

  6. 前端开发:4、JavaScript简介、变量与常量、数据类型及内置方法、运算符、流程控制、循环结构、内置方法

    前端开发之JavaScript 目录 前端开发之JavaScript 一.JavaScript简介 二.JS基础 三.变量与常量 四.基本数据类型 1.数值类型 2.字符类型 3.布尔类型 五.特殊数 ...

  7. 刘强1109 JavaScript基础二(分支与循环结构)

    [if-else结构] 1.结构的写法: if(判断条件){ 条件为true时,执行if{} } else{ 条件为false时,执行else{} } 2.注意事项: ① else{}语句块,可以根据 ...

  8. Java05-Java基础语法(四)循环结构

    Java05-Java基础语法(四)循环结构 循环结构(重复/迭代):根据条件重复执行部分语句 1.while循环结构 while(条件表达式){ 循环体语句; } 1)语法:a.while是关键字 ...

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

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

  10. java学习(四)修饰符、运算符、循环结构、分支结构

    修饰符 一般是放在定义类,方法,变量的最前端 访问控制修饰符 修饰符 当前类 同一包内 子孙类 其他包 public Y Y Y Y protected Y Y Y N default Y Y N N ...

随机推荐

  1. 《深入剖析Nginx》 笔记

    nginx的编译安装使用Linux下通用的三板斧即可:./configure make make install 查看帮助选项./configure --help 禁用编译器优化方法一:CFLAGS= ...

  2. abap screen页签开发注意事项

    问题描述:我比较懒,开发程序的时候所有的页签都是直接公用主程序的按钮功能,这就导致,当我按了按钮之后,SY-UCOMM里保存的是我自建按钮的code, 如果不进行页签跳转,或者按其他按钮的话,直接按下 ...

  3. yzh 总线选讲

    分布式:通过总线,我们可以用"通信""消息"等视角,把各个模块拆成各个小状态机,每个小状态机互相之间独立,通过总线通信 集中式:通过一个大状态机生成所有控制信号 ...

  4. TODOList小黄条

    TODOList http://www.yynote.cn/ 总结 windows中的神器

  5. 大规模人脸分类—allgather操作(2)

    腾讯开源人脸识别训练代码TFace 中关于all_gather层的实现如下.接下来解释为什么backward要进行reduce相加操作. https://github.com/Tencent/TFac ...

  6. 手动收集oracle的统计信息脚本及相关操作

    我们一般习惯使用oracle自带的统计信息收集,但很多时候我们会发现,有很多关键的表始终没有被收集过. connect 用户/密码grant create any table to 用户;-- 这一步 ...

  7. Docker之RabbitMQ保姆级别安装

    Docker之RabbitMQ保姆级别安装: 如果觉得样式不好:跳转即可 http://www.lifengying.site/(md文件复制过来有些样式会不一样) 学英语网站项目:自己先保证Redi ...

  8. iOS 扩展与分类的区别

    1.分类 category 分类的作用就是在不修改原有类的基础上,为一个类扩展方法,最主要的是可以给系统类扩展我们自己定义的方法 分类也能使用@property 添加属性 [通过runtime 关联对 ...

  9. 061_Apex 异常捕捉

    Trigger 中的错误处理 在 Trigger 中,我们可以为进行操作的数据进行验证,类似于验证规则.如果遇到不符合条件的数据,可以通过 addError() 函数来将错误显示给用户,并记录日志. ...

  10. 关于新版的MySQL安装教程

    主要参考大大的博客,连接如下:https://www.cnblogs.com/xiaohanlin/p/10345501.html 在装MySQL时,突然发现最新版的居然是.zip格式的,我原来的还是 ...