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个变量来存储,如果需要存储更多数据,那就会变的更麻烦.我们用 ...
随机推荐
- windows shell命令相关
一 系统自带的命令 1 创建文件夹 mkdir 文件夹名 2 强制删除文件夹 rd/s/q 文件夹名 3 强制删除文件 del/f/s/q 文件名 4 移动文件到文件夹 move 文件名 文件夹名 二 ...
- 详解卷积神经网络(CNN)
详解卷积神经网络(CNN) 详解卷积神经网络CNN 概揽 Layers used to build ConvNets 卷积层Convolutional layer 池化层Pooling Layer 全 ...
- Activiti图表bpmn对应的xml文件
当我们绘制了一个bpmn图表,实质是创建了一个xml文件, 右键bpmn文件open with xml edit <?xml version="1.0" encodin ...
- Kafka介绍与消息队列
消息队列的好处: 消息队列(Message Queue) 消息: 网络中的两台计算机或者两个通讯设备之间传递的数据.例如说:文本.音乐.视频等内容. 队列:一种特殊的线性表(数据元素首尾相接),特殊之 ...
- postgresql数据库备份
一.工具备份数据 打开windows下的命令窗口:开始->cmd->安装数据库的目录->进入bin目录: 导出命令:pg_dump –h localhost –U postgres ...
- 502 Bad Gateway
状态码解释: 502 Bad Gateway:作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应. 502 原因分析: 将请求提交给网关如php-fpm执行,但是由于某些原因没有 ...
- java.util.ConcurrentModificationException详解
引用于http://blog.csdn.net/dabing69221/article/details/40065071 在使用set/map时,一个可爱的小bug:Java.util.Concurr ...
- java泛型的作用及实现原理
一.泛型的介绍 泛型是Java 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为泛型类.泛型接口.泛型方法. Ja ...
- python-web自动化-Python+Selenium之expected_conditions:各种判断
expected_conditions一般也简称EC 以下两个条件类验证title,验证传入的参数title是否等于或包含于driver.titletitle_istitle_contains 以下两 ...
- maven pom文件
setting.xml主要用于配置maven的运行环境等一系列通用的属性,是全局级别的配置文件:而pom.xml主要描述了项目的maven坐标,依赖关系,开发者需要遵循的规则,缺陷管理系统,组织和li ...