JS基础-分支结构-循环-数组
1.分支结构
1.if结构
语法:
if(条件){
语句块;
}
注意:
1.条件尽量是boolean的,如果不是boolean的,以下条件值,会当做false
if(0){}
if(0.0){}
if(""){}
if(undefined){}
if(null){}
if(NaN){}
ex:
if(35){...} //true
2.if后的{}可以省略
省略后,if只控制下面的第一条语句
建议不要省略{}
2.if...else...结构
语法:
if(条件){
语句块;
}else{
语句块;
}
3.if...else if...else...结构
语法:
if(条件){
语句块1;
}else if(条件){
语句块2;
}else if(条件){
语句块3
...s
}else{
语句块n;
}
练习:
从弹出框中输入1-7的数字,数字分别代表周一到周日,
输入1:打印输出“周一吃红烧肉”
2:“周二吃红烧排骨”
3:“周三吃红烧丸子”
4:“周四吃红烧茄子”
5:“周五吃红烧带鱼”
6和7:“周末减肥”
4.switch...case结构
1.作用:等值判断(===)
2.语法:
switch(值/表达式){
case 值1:
语句块1;
break; //结束switch结构,可选的
case 值2:
语句块2;
break;
....
default:
语句块n;
break;
}
3.特殊用法
执行相同操作时:
switch(值/表达式){
case 值1:
case 值2:
case 值3:
语句块;
}
2.循环
1.特点
1.循环条件:循环的开始和结束
2.循环操作:要执行的相同或相似的语句
2.循环-while
语法:
while(条件){
//循环体-循环操作
//更新循环条件
}
问题:打印输出1-10的数字
练习1:打印1-100之间的所有数字
3.循环的流程控制
1.break
作用:终止整个循环的运行
2.continue
作用:终止本次循环,继续下一次循环
问题:
循环从弹出框中录入信息,并且打印,直到输入exit为止。
练习:
计算1-100之间所有偶数的和
4.循环-do...while
语法:
do{
循环体
}while(条件);
执行流程:
1.先执行循环体
2.再判断循环条件
如果条件为真,则继续执行循环体
如果条件为假,则跳出循环操作
练习:改版循环录入操作
1.从弹出框中循环录入数据并打印在控制台
2.输入exit为止(exit不输出)
练习2:
1.随机生成一个1-100之间的数字
Math.random();生成0-1之间的随机数
var r=parseInt(Math.random()*100)+1;
2.让用户输入一个数字
如果输入的数字比随机数大,提示猜大了;
如果输入的数字比随机数小,提示猜小了;
否则,猜对了!
允许循环猜数
3.输入exit也可以退出游戏。
5.for循环
1.ex:
var i=1; //表达式1
while(i<=100){ //表达式2
console.log(i);
i++; //表达式3
}
2.for语法
for(表达式1;表达式2;表达式3){
循环体
}
ex:
for(var i=1;i<=100;i++){
console.log(i);
}
表达式1:循环条件的声明
表达式2:循环条件的判断
表达式3:更新循环变量
执行流程:
1.先执行表达式1
2.判断表达式2的结果(boolean类型)
3.如果条件为真,则执行循环体,否则退出
4.执行完成循环体后,再执行表达式3
5.判断表达式2的结果
练习:
定义一个函数,打印乘法表中的任意一行
传参,传几打印第几行。
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
...
ex:传4,打印第4行
循环条件:从1开始到line结束
循环操作:循环变量*line=循环变量*line
3.for三个表达式特殊用法
for(表达式1;表达式2;表达式3){}
1.省略表达式
三个表达式可以任意省略,分号不省略。
但一定要在循环的内部或外部将表达式补充完成。
2.表达式1和表达式3允许写多个表达式,多个表达式之间用逗号隔开。
ex:
function sum(){
for(var i=1,sum=0;i<=100;i++){
sum+=i;
}
console.log(sum);
}
4.循环嵌套
1.循环嵌套
在一个循环体内,又出现另一个循环
for(var i=1;i<=10;i++){ //外层循环
for(var j=1;j<=10;j++){ //内存循环
//循环体
}
}
外层循环走一次,内层循环走一轮
练习1:在控制台打印以下图像
*
**
***
****
*****
练习2:打印99乘法表
3.数组
1.什么是数组
在一个变量中保存多个数据
数组是按照线型顺序来排列的-线型结构
2.声明数组
1.语法
1.var 数组名=[];
ex:
var unames=[];
2.var 数组名=[元素1,元素2,元素3];
var unames=["TOM","lilei","lucy"];
3.var 数组名=new Array();
4.var 数组名=new Array(元素1,元素2,元素3);
ex:
var names=new Array("林黛玉","贾宝玉","刘姥姥");
练习:
1.创建一个数组,该数组保存3名学员的姓名
2.再创建一个数组,该数组保存3名学员的年龄
3.在控制台,分别打印输出数组中的值。
2.数组的使用
取值和赋值操作都使用:数组名[下标]
1.为数组元素赋值
数组名[下标]=值;
2.获取数组中的元素
数组名[下标];
3.获取数组的长度
数组长度:数组中元素的个数
属性:length
语法:数组名.length
1.length表示数组的长度,还可以表示即将要插入的元素的下标
ex:
var unames=["Tom","lucy","lilei"];
unames[unames.length]="孙悟空";
unames[unames.length]=prompt();
2.配合循环,遍历数组中每一个元素
for(var i=0;i<=unames.length-1;i++){
i:表示每个元素的下标
unames[i]:取到每一个元素
}
JS基础-分支结构-循环-数组的更多相关文章
- [C语言入门笔记]分支结构与数组
分支结构与数组 什么是分支结构? 分支结构是用户或者程序可以选择下一步执行哪个语句 分支结构有哪些? If If Else If Else If Switch 在初学者的学习过程中第一种和第二种比较普 ...
- [java基础]分支结构(2)
[java基础]分支结构2 switch case /** 文件路径:G:\JavaByHands\if-else\ 文件名称:switchcase.java 编写时间:2016/6/6 作 者:郑晨 ...
- java 基础 03 运算符 分支结构 循环结构
今天内容: (1)运算符 (2)分支结构 (3)循环结构 1运算符 1.1赋值运算符 (1)简单赋值 = 表示赋值运算符,用于将=右边的数据赋值给=左边的变量来覆盖原来的数值. 笔试题: ia == ...
- Java基础之分支结构循环结构
流程控制语句if(分支结构) 流程控制:流程就是指代码运行过程.控制就是说什么场景可以执行,什么场景不能执行. 1.if语句第一种形式 格式:if(表达式){ 执行的语句: } 2. ...
- VBA基础 - 分支和循环
概要 编程语言的基础除了数据类型, 就是控制结构了. 所谓控制结构, 主要就是分支和循环. 分支 废话不说, 直接示例代码: 单条件判断 1 Sub Test() 2 If 2 > 1 Then ...
- java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)
JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...
- day_4流程控制之分支结构循环结构及for循环
复习一下昨天的内容 1:变量的命名规范 只能由数字 字母 及下划线组成 不能以数字开头 不能与系统关键字重名 _开头有特殊含义 __开头__结尾的变量是魔法变量 支持大小驼峰 ,但建议使用下划线连接语 ...
- JS基础语法---for循环遍历数组
for循环遍历数组 要显示数组中的每个数据,可以如下: var arr=[10,20,30,40,50]; //显示数组中的每个数据 console.log(arr[0]); console.log( ...
- 二、JavaScript语言--JS基础--JavaScript进阶篇--数组
1.什么事数组 我们知道变量用来存储数据,一个变量只能存储一个内容.假设你想存储10个人的姓名或者存储20个人的数学成绩,就需要10个或20个变量来存储,如果需要存储更多数据,那就会变的更麻烦.我们用 ...
随机推荐
- Python Day5 模块 包
一:区分Python文件的2种用途 1个Python文件的2种用途 1.1 当作脚本执行: if __name__ == '__main__': 1.2 当作模块导入使用 if ...
- XSY contest1586 proB
题目 现在一圈n个花坛, 每次随机往一个花盆里种花, 一个花盆可以种多颗花, 假如一个花盆两边的花盆都有花, 那么他也将被种上花 问期望种满所有花盆要种几次 首先定义f(i)为放置了i个物品后完全覆盖 ...
- SpringMVC - 运行流程图及原理分析
流程示意图: 代码分析图:
- sql常用语句备忘录随时更新
一.查询最新的一条数据 SELECT * FROM Table a WHERE NOT EXISTS (SELECT FROM Table b WHERE a.Date>b.Date) 二.查询 ...
- QTP - 工作原理
1.QTP的工作原理测试对象是QTP在测试或组件中创建的用于表示应用程序中的实际对象的对象,并且QuickTest在对象库中存储有关该对象的信息,包括对象的属性.操作等.录制的时候,QTP将操作过的所 ...
- 面试回顾——List<T>排序
1.如何对List<T>排序: public static void main(String[] args) { Student stu1=new Student("张三&quo ...
- 1. Spring基于xml加载和读取properties文件配置
在src目录下,新建test.properties配置文件,内容如下 name=root password=123456 logArchiveCron=0/5 * * * * ? 一种是使用sprin ...
- servlet cdi注入
@WebServlet("/cdiservlet")//url映射,即@WebServlet告诉容器,如果请求的URL是"/cdiservlet",则由NewS ...
- ARM中R0-R15寄存器的作用
根据“ARM-thumb 过程调用标准”: 注意:在中断程序中,所有的寄存器都必须保护,编译器会自动保护R4-R11
- ubuntu彻底卸载软件
找到此软件名称,然后sudo apt-get purge ......(点点为为程序名称),purge参数为彻底删除文件,然后sudo apt-get autoremove,sudo apt-get ...