1、循环结构
1、问题 1、控制台上打印一遍Hello World console.log("Hello World"); 2、控制台上打印十遍Hello World console.log("Hello World"); console.log("Hello World"); ....... 3、控制台上打印1000遍 Hello World 4、将1000遍的Hello World变成 你好,世界 5、在1000遍 你好世界 基础上增加 第N遍:你好世界 第 1 遍 :你好,世界 第 2 遍 :你好,世界 2、什么是循环 循环:重复的执行相同或相似的代码 生活中的循环场景: 1、上学 2、跑圈 3、活着 循环的两个基本要素: 1、循环条件 整个循环的次数,可以由循环的开始和结束来决定 2、循环操作(循环体) 在每一次循环过程中,所做的相同或相似的操作是什么 3、while 循环结构 3.1、语法结构 while(条件){ //循环体 } 如果条件为真的,则执行一遍循环体中的语句,然后再一次 去判断条件,如果条件为真,则再执行一遍循环体中的语句. ......直到条件为假时,则结束循环 3.2、break 作用:终止循环操作, 问题:从网页上一直输入字符并打印, 直到输入"exit"为止(不确定循环次数) while(true){ //输入 字符 //判断输入的字符 是否为 exit,如果是 则break //打印 字符 } 4、:do{}while(); 4.1 循环变量=初始值 do{ 循环体; 自增 自减.... }while(循环条件); ----->顺序不同: var i = 0; //i[0] do{ console.log(i);//0 1 2 3 4 i++; //i[4] }while(i<5); 笔试题: 总结:while vs do while 1:如果第一次条件都满足,两者完全一致. 2:如果第一次条件不满足,while 是一次都不执行 退出循环: 1:循环条件控制退出..优雅 2:break;随时退出循环..野蛮 3:return;返回值 少用... continue; 退出本次循环除下语句 var i = 1; while(i<10){ if(i==3){ break; } console.log(i); i++; } 练习 1、电话银行 1、循环操作 1、弹出提示信息并接收用户输入的数据(prompt) 2、开始匹配 用户输入的数据 1、输入1 余额查询中,请稍后.... 2、输入2 取款中,请稍后 3、输入3 转账中,请稍后 4、0 弹出 退出 提示 退出循环(break) 5、非0-3之间 给出错误提示 2、循环条件 无限次(while(true)) 2、猜数字游戏 1、循环外 生成一个随机数 //生成0-1之间的随机数 var num=Math.random(); //将0-1的随机数变成0-99 num= num*100; //只获取随机数的整数部分 num=parseInt(num); 2、循环 1、条件 无限制(while(true){}) 2、操作 1、要求用户输入一个数字并保存(input) 2、判断用户输入的内容 0、input是否为exit退出(break) 1、input>num:提示大了 2、input<num:提示小了 3、提示正确,结束(break) 5、for 循环结构 var i=1;//1、循环条件 变量声明 while(i<=10){//2、循环条件 //3、循环操作 console.log("Hello World"); i=i+1;//4、确定循环次数时,不能省略 } 1、for循环结构语法 for(表达式1;表达式2;表达式3){ 循环操作 } 表达式1:循环条件 变量声明 表达式2:循环条件的判断 表达式3:更新循环变量(确定循环次数时使用) 执行过程: 1、计算表达式1的值 2、计算表达式2的值,如果结果为true,则执行循环体, 结果为false,则退出循环 3、执行循环体 4、计算表达式3的值 5、计算表达式2 ...... 6、反复执行循环体 使用场合: 1、确定循环次数的时候,优先使用for循环 2、不确定循环次数时,可以优先使用 while 2、for表达式的特殊用法 1、表达式1可以省略,;不能省 尽量将 表达式1的内容在for之外补齐 3、表达式2也可以省略,;不能省 省略之后,会出现死循环 尽量在循环体内将条件补足 4、表达式3可以省略 死循环 5、三个表达式全为空 死循环,一定要在循环体内或外 补充所有的表达式 2、数组 1、问题 将 现场班 所有同学的名称保存起来 var name1=""; var name2=""; .... var name80=""; console.log(name1); .... console.log(name80); 2、一组数据--数组(Array) 1、什么是数组 多个元素所组成的集合--在一个变量中保存多个数值 一组变量的集合,再起一个统一名字.. 数值数据 是按照 “线性” 顺序排列的 线性: 有序排列 除第一个数据以外元素都有一个直接的“前驱”元素 除最后一个数据外,其他的每个元素都有一个“后继”元素 数值的元素是一个挨一个 按顺序存储 在数组中,通过下标(索引)来表示数组中元素的位置 (从0开始,到数组元素个数-1结束) 2、如何创建数组 1:创建数组 5种 var arr1 = [];//创建一个空数组 var arr2 = [值1,值2.....]//创建有值数组 var arr3 = new Array();//创建一个空数组 var arr4 = new Array(n);//创建一个长度为n个元素数组 var arr5 = new Array(值1,值2....); 3、获取数组中值 数组名[0] 获取某个值对操作与普通变量一样 4、修改数组中值 数组名[下标] = 值; 5、固定套路常见属性 每一个数组对象属性.length arr2.length {数组中元素个数} var arr2 = [1,3,4,5] 4 // 0 1 2 3 arr2.length;==7 6、遍历数组 获取数组中每一个元素 练习1 a:创建数组[1,2,3,4,5,6,7,8,9] b:计算累加和,将数组每一个元素相加 c:输出累加和 练习2 a:创建数组[1,2,30,4,50] b:计算数组中每一个元素平均值 c:输出平均值 练习3 a:创建数组[1,2,-30,4,50] b:获取数组中最大值 c:输出最大值