循环的嵌套

所谓的循环嵌套,就是 for(){} 的循环体,也包含 for循环

   for(){for(){}}
for (var j = 1; j <= 5; j++) {for (var i = 1; i <= 5; i++) {console.log(`i是${i} , j是${j}`);}console.log('')
}

执行程序,先执行外层 j 的循环
①当 j 第一次循环时 j 是 1
此时要执行 j 的循环体 —
也就是 i 的循环
i的for循环是从1-5来执行循环,然后输出内容
i 的数值 是从1循环至5,j的数值始终是 1
当 i 1-5 循环结束了 执行 console.log(’’)
此时 j 的 第一次循环体完全执行完毕
执行 j 循环的步长 j++
② j 第二次循环 j 是 2
重新执行 循环体 i 从 1-5 循环 j 始终是 2
i循环结束,执行console.log() 循环体执行结束
j 的循环体执行结束, 执行 j 的步长 j++

特别注意:
1, 当 外层循环体 执行一次循环时 , 内层循环体 执行所有的循环
2, 当 内层循环执行时,外层循环数值是保持不变的
3, 内层循环体的循环变量,往往与外层循环变量相关联
也就是 i 往往与 j 有关系

相当于时钟的效果
当前 是 12:00:00
之后 秒针要 从 1-60 循环
此时 分钟是保持不变的
12:00:01 12:00:02 12:00:03 12:00:04…

demo1.

输出一个由 * 星号组成的三角形

*
* *
* * *
* * * *
* * * * *

分析 :
每行 : 输出 星号, 星号之后有空格 , 结束有换行
重复执行 : 将每行内容重复执行

//笨蛋方法:for(var i = 1 ; i <= 1 ; i++){// 循环5次,每次输出一个星星和一个空格document.write('*&nbsp;');}// 当前行的星星和空格输出之后,再输出一个换行document.write('<br>');for(var i = 1 ; i <= 2 ; i++){// 循环5次,每次输出一个星星和一个空格document.write('*&nbsp;');}// 当前行的星星和空格输出之后,再输出一个换行document.write('<br>');for(var i = 1 ; i <= 3 ; i++){// 循环5次,每次输出一个星星和一个空格document.write('*&nbsp;');}// 当前行的星星和空格输出之后,再输出一个换行document.write('<br>');for(var i = 1 ; i <= 4 ; i++){// 循环5次,每次输出一个星星和一个空格document.write('*&nbsp;');}// 当前行的星星和空格输出之后,再输出一个换行document.write('<br>');for(var i = 1 ; i <= 5 ; i++){// 循环5次,每次输出一个星星和一个空格document.write('*&nbsp;');}// 当前行的星星和空格输出之后,再输出一个换行document.write('<br>');
//便捷思路:
定义一个变量,是随机的总函数 5-15行var line = parseInt(Math.random()*( 15+1-5 ) + 5);一行内容,循环的次数,也就是行数
j 是 从 1 至 5 的循环 表行数for (var j = 1; j <= line; j++) {// 一行内容 , 星星 空格 一行结束 有换行// j 是从1至5 变化的// 当第一次 j 循环 j 是 1, i 就是 <= 1 , i 循环 执行 1 次// 当第二次 j 循环 j 是 2, i 就是 <= 2 , i 循环 执行 2 次// 当第五次 j 循环 j 是 5, i 就是 <= 5 , i 循环 执行 5 次// 总结 : i 的循环次数 与 j 的数值 是相关联的for (var i = 1; i <= j; i++) {document.write('* ');}document.write('<br>');}

总结步骤
1,先定义最多一行输出内容的程序 – 内层循环
2,再定义变量,生成行数 – 外层循环
3,判断行数,与当前行,循环次数的关系

demo2. 99乘法表

外层循环,生成的是9行的行数
也就是将一行内容,循环执行9次

for (var j = 1; j <= 9; j++) {// 一行的内容,循环输出,乘法公式// 乘法公式的第一个数值是内层循环变量,第二个数值是外层循环变量for (var i = 1; i <= j; i++) {document.write(`${i}*${j}=${i * j} `);}// 每行结束之后,有一个换行document.write('<br>');
}

总结
1,先写内容最多的一行 — 内层循环
2,定义行数 — 外层循环
3,将两个循环套一起
4,将内层循环中,所有与外层循环变量相关的数值,做替换

JS05-循环的嵌套demo相关推荐

  1. python循环语句嵌套_Python 循环语句

    循环语句 ​循环语句主要是用于解决某些重复的代码工作,使需要重复的代码只写一遍即可. Python循环语句主要有两种:while循环和for...in...循环. 一.while循环 主要用于不确定循 ...

  2. python循环套循环_零基础学python 14 循环套循环:循环的嵌套

    大家可以回忆一下,之前我们学习过的循环结构.也就是for循环结构,今后我们还将学习另一种循环结构while结构,这里先不细讲.当初我们学习for循环结构的时候,有心的同学或许会发现,我们的for结构一 ...

  3. C语言for循环的嵌套例题,c语言 for循环的嵌套(含答案)

    c语言 for循环的嵌套(含答案) 第 33.34 课时 for 循环的嵌套实验题一:1.下面程序的功能是计算:至 50 中是 7 的倍数的数值之和,请选择填空.D#include main() in ...

  4. php for嵌套循环_PHP中的for循环怎样嵌套

    本篇文章主要介绍 PHP中的for循环怎样嵌套,感兴趣的朋友参考下,希望对大家有所帮助. for循环的执行原理: for循环的参数有(初始值:判断条件:更新循环变量表达式) 三者均不是必须的,若三者不 ...

  5. java循环的嵌套执行

    java循环的嵌套执行 /*** 循环的嵌套执行*/ public class Test14 {public static void main(String[] args) {/*** 外层循环执行一 ...

  6. php实验星星塔,简单编程(九)编程制作特殊图案 星星塔(3) 左右星星塔 for循环的嵌套编程...

    for循环的嵌套编程 Java 使用for循环的嵌套编程输出如下图形: *                  * ***              *** *****          ***** * ...

  7. python循环套循环,零基础学python 14 循环套循环:循环的嵌套(课后习题)

    上节课我们学习了循环的嵌套的知识,这节课我们来做一点练习吧: 主题:集合的交集 现在有两个元素都是整数的list,每一个list都是一个集合(就是说,在集合内没有重复的值,比如没有两个2或者两个3什么 ...

  8. 【循序渐进学Python】Python中的循环(二)——while循环与嵌套

    [循序渐进学Python]Python中的循环--while循环与嵌套 while循环(在给定的判断条件为 True 时执行循环体,False退出循环体) 当满足一定条件的时候才循环,具体循环多少次没 ...

  9. do...while循环语句、死循环、循环的嵌套、Break、Continue

    1.do-while循环语句 格式: do{ 循环执行体 }while(循环条件); 注意该循环和while循环的区别: 当首次的循环条件结果是false,那么while循环的执行体是不执行的, 但是 ...

  10. c语言双重循环教程,C语言教程之如何进行循环的嵌套详细程序实例说明

    循环的嵌套 一个循环体内又包含另一个完整的循环结构称为循环的嵌套.内嵌的循环中还可以嵌套循环,这就是多层循环. 三种循环(while循环.do-while循环和for循环)可以互相嵌套. 下面几种都是 ...

最新文章

  1. CCS Font 知识整理总结
  2. matlab 数据拟合
  3. 使用类的静态字段和构造函数,我们可以跟踪某个类所创建对象的个数。请写一个类,在任何时候都可以向它查询“你已经创建了多少个对象?”。...
  4. html传值方式有哪几种,关于html页面间传值的几种方法
  5. 小程序上拉加载,下拉刷新
  6. C++中 Map的了解与基本用法(代码演示+自我总结+map中一对多的用法)
  7. js webapp://_Project Student:维护Webapp(只读)
  8. 营口(熊岳)温泉旅游归来!
  9. Java开发设计——UML类图
  10. python 文本转excel_如何使用python将txt文件中的数据转换为Excel文件
  11. 华三交换机如何进入配置_如何初始化配置H3C交换机
  12. MATLAB中的小技巧
  13. 搜狗高级测试经理诸葛东明谈基于AI图像识别的输入法性能测试实践
  14. 系统架构师(八)系统分析与设计方法
  15. 微信小程序—收藏功能
  16. Java中使用JCOM操作Word/Excel对象
  17. Java游戏项目之“超级玛丽”实战教程,终于可以制作属于自己的小游戏了
  18. Android11以上版本使用高德定位,定位成功,卫星数一直为0
  19. 什么是STAR原则?
  20. IDEA使用Spark 进行对所有数据进行统计

热门文章

  1. 80端口有什么用,80端口被禁用怎么解决
  2. 2017年11月19日实验感想
  3. Python中RE模块总结
  4. 常用度量--MAE(平均绝对误差)和RMSE(均方根误差)
  5. linux 关闭防火墙,关闭8081端口防火墙
  6. 小班同学学习经历分享(一)游戏程序员成长札记
  7. html中表格居中对齐
  8. matplotlib配色
  9. book mac pro怎么重装系统_MacBook Pro怎么重装系统 MacBook Pro重装系统教程
  10. 重载函数sroot3次,让它返回整数、长整数、双精度数的二次方根