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个变量来存储,如果需要存储更多数据,那就会变的更麻烦.我们用 ...
随机推荐
- 4.IIC总线
一.IIC总线说明: IIC总线时序只有高低电平的持续时间一般是大于多少us/ms. iic时序: 开始:当SCL为高电平时,SDA由高电平状态切换到低电平状 ...
- 廖雪峰Java7处理日期和时间-4最佳实践-最佳实践
jdk提供了2套新旧的API来处理日期和时间. java.util * Date * Calendar java.time(JDK>=1.8) * Localdate * LocalTime * ...
- 涨姿势:Java 分业务、分级别实现自定义日志打印
自定义日志级别 通常的日志框架都有以下几个级别,从低到高TRACE,DEBUG,INFO,WARN,ERROR,FATAL. 默认情况,假如我们定义日志打印级别INFO,它会把大于等于INFO级别的日 ...
- ps-如何去背景色(将背景色变透明)
由于生活或工作的需求,图片的处理是必不可少.其中将图片某一部分变为透明,或者截取图片的某一部分比较常见. 1.首先,打开待处理的图片: 2.复制背景图层,将背景图层设为不可见(左边的眼睛即可),选择左 ...
- redis排序
1.sort 排序最常见的是sort命令,可以对列表或者有序集合排序,最简单的排序方式如下: > lpush list (integer) > lpush list (integer) & ...
- python3 kmp 字符串匹配
先声明,本人菜鸟一个,写博客是为了记录学习的过程,以及自己的理解和心得,可能有的地方写的不好,希望大神指出... 抛出问题 给定一个文本串test_str(被匹配的字符串)和模式串pat_str(需要 ...
- centos svn强制要求提交代码时写注释
1. 重命名svn主目录中hooks的pre-commit.tmpl文件为pre-commit,并添加可执行权限 mv pre-commit.tmpl pre-commit chmod u+x pre ...
- 高校手机签到系统——第一部分Authority权限系统(上)
序:今天开始写一个算是我第一个系列的文章——高校手机签到系统.本系统结合我们学校自身的一些特点编写.这是我的毕业设计项目,写在这里算是给最后论文的时候一些点滴的记录.另外也想通过这个系列的文章找到一份 ...
- HTML5 元素文字超出部分显示省略号(支持多行),兼容几乎所有常用浏览器
1,公共样式,在公共的 CSS 文件中加入以下内容 /* 超出部分显示省略号,支持多行 */ .text-ells:before { content: ''; float: left; width: ...
- leetcode461
public class Solution { public int HammingDistance(int x, int y) { ]; ]; ; ; do { aryA[i] = x % ;//将 ...