复习
数据类型
分为原始类型和引用类型
原始类型:数值型,字符串型,布尔型,未定义型undefined,null
八进制 010 十六进制 0~9 a~f 0X10 3.4e3
数据类型的转换
隐式转换
数值型+字符串 = 字符串
数值型+布尔型 = 数值型
布尔型+布尔型 = 数值型
布尔型+字符串 = 字符串
强制转换
转换整型 parseInt(‘a23.55a’) //NaN -> not a number
转换浮点型 parseFloat(‘23.55a’)
转换数值型 Number(‘23.55’) //23.55
转换字符串型 1.toString() // ‘1’ true.toString() // ‘true’
将字符转换成Unicode编码值
‘一’.charCodeAt().toString(16) //字符串类型的 16进制的值
运算符
算术运算符,比较(关系)运算符,逻辑运算符,位运算符,赋值运算符
算术运算符: + - * / % ++ –
num++ ++num
比较运算符:> >= < <= == != === !==
‘2’ === 2
逻辑运算符: && || !
true && true --> true
false && true --> false
true || false --> true
false || true --> true
!true --> false
!false --> true
逻辑中断
false && true --> false
true || false --> true
位运算符(二进制的计算)
& | ^ >> <<
赋值运算符 a=1 a+=1 (a = a-1) -= *= /= %=
学习一门编程语言路线图
(1)了解语言的背景,历史,特点,应用领域,现状
(2)搭建开发环境,编写 hello world
(3)声明变量和常量
(4)数据类型
(5)运算符
(6)逻辑结构
(7)通用小程序
(8)函数和对象
(9)第三方的类库,插件,组件,框架
(10)开发项目
三目(条件)运算符
一目运算符就是只有一个操作数或者表达式
a++ a-- !false
二目运算符就是含有两个操作数或者表达式
-
-
- / > >= < <= == != === !== && ||
& | ^ >> << = += -= *= /= %=
三目运算符是含有三个操作数或者表达式
条件表达式 ? 表达式1 : 表达式2
如果条件表达式结果是true,执行表达式1,否则执行表达式2
- / > >= < <= == != === !== && ||
-
今日目标
流程控制
循环语句
1.流程控制
程序 = 数据 + 算法
任何复杂的程序的算法都可以分为“顺序执行”,“选择执行”,“循环执行”
选择执行:程序可以选择执行这段代码,也可以选择不执行这段代码
(1)if语句
if(逻辑表达式){
语句1;
语句2;
…
}
语句3
执行流程:
如果逻辑表达式结果是true,执行语句1,语句2;
如果逻辑表达式结果是false,跳过语句1,语句2;
alert/prompt
练习:
通过弹出提示框,输入商品的总额,如果总额满500,则打八折,最终打印商品的应付金额。
注意:
if后边的大括号中的语句只有一条,可以省略大括号,否则不能省略
if(true){ } 逻辑表达式可以直接写true或者false
在逻辑表达式中 undefined,null,0,’’,NaN都被认为是false;
2.if…else语句
语句1;
if(逻辑表达式){
语句2;
}else{
语句3;
}
语句4;
执行流程:
①执行语句1;
②判断逻辑表达式的值
如果结果是true,执行语句2
如果结果是false,执行语句3
③执行语句4
练习:
结账
判断账户余额是否满足大于等于商品的总额
如果满足,支付,否则,提示余额不足
3.if…else语句嵌套
语句0;
if(逻辑表达式1){
语句1;
}else if(逻辑表达式2){
语句2;
}else…if(逻辑表达式n){
语句n;
}else{
语句n+1; //在以上n中情况都不满足的情况下才执行
}
执行流程:
①执行语句0
②执行逻辑表达式1,如果结果是true,执行语句1;否则执行逻辑表达式2,如果结果是true,执行语句2;否则继续执行其他的逻辑表达式;
③如果以上所有的逻辑表达式结果都是false,则执行语句n+1
练习:
声明变量xz来保存星座信息,使用if…else语句的嵌套,来完成根据星座来打印出对应的 性格。
判断: xz == ‘狮子座’
4.多项分支语句 switch…case语句
语句0;
switch(表达式){
case 1: //如果表达是的值是1,选择进入这个入口执行程序
语句1;
…
break; //终止,不会再向下执行程序
…
case n:
语句n;
…
break;
default: //以上所有的值都不匹配,选择这个入口执行程序
语句n+1;
…
}
注意:在switch语句中,比较所执行的是全等于( === )
练习:
使用switch…case语句完成星座判断。
if…else嵌套语句和switch…case语句的区别
if…else可以判断所有的情况,例如大于,小于,等于,不等于…
switch…case 只能用于全等于(===)的比较,局限性比较大;但是他的执行效率比if…else更快。
5.循环语句 while循环
循环就是一遍又一遍执行相同或者相似的代码
例如:循环产生商品列表,打印100一次’hello’
while(布尔型的表达式){
//要循环的代码
}
练习:打印0~14 之间所有的数字
课后任务:
(1)复习今天的内容,整理出全天的思维导图
(2)作业:完成使用switch…case语句,判断一个人的成绩
60~69 70~79 80~89 90~99 100
让分数除以10,然后取整(parseInt),得到的结果6,7,8,9,10
(3)扩展学习:自学for循环,do…while循环,以及循环嵌套