一 、运算符
- 1.算数运算符
+ 、-、* 、 / 、 %
- 2.拼接运算符
+
注意
:拼接运算符,左右2边,出现字符串,就能实现拼接
- 逻辑运算符
&& 与 找假,找到了假的,就不往后面执行,返回结果
|| 或 找真,找到了真的,就不往后面执行,返回结果
! 非
注意
: && , || 又称之为 短路运算符
- 关系运算符
>、>=、<、<=、 ==、 ===、 !=、 !==
关系运算符的比较规则:
1, 数字和数字比较, 直接比较大小
2, 数字和字符串比较, 字符串转换为数字后再比较
3, 字符串和字符串比较, 进行字符的ASCII码值比较比较注意事项:
1, 布尔值 ture=1, false=0
2, 只要不等于NaN, 就是true,其他有NaN的运算都为false
3, 如果要恒等, 则必须值和类型都要相等;-
关系运算符 (特殊值)
注意
undefined == 0 undefined是undefined类型,0是数值类型,不能进行比较,所以是false
[]==![] true toString()后 ""
{}==!{} false toSting()后 NaN
0 == '' // true
0 == '0' // true
- 运算符优先级
- 赋值运算符
+=、-=、*=、/=、%=
- 6.一元运算符
一元运算符,有称之为 自增与自减
a++ 先取值,后运算
++a 先运算,后赋值
a--, --a 同上
- 三目运算符
表达式 ? 结果1:结果2
- 8.位移运算符
2 >> 2 == 0 // 把2 的2进制数 向右边移动2位
2 << 2 == 8
注意
,位移运算符会把第一个数转成2进制,根据 位移符解决将2进制向左还是向右移动 n位,n就是符号后面的那个数,位移操作完成后,将新的2进制数转回10进制
二 、三大流程语句
程序的三大流程控制:
我们的计算机在执行一个程序的时候,最基本的方式是一条语句接一条语句的执行。但不可能所有的问题都能用顺序执行方式就能解决,总会有一些跳转。
采用结构化的程序设计,可以大大提高开发程序的速度、提高程序的可读性、程序运行的速度和效率。
结构化程序是由若干个基本结构组合而成,每一个结构可以包含若干条语句和其它基本结构。共有三种基本结构:
顺序:从上朝下执行的代码就是顺序
分支(选择):根据不同的情况,执行对应代码
循环:重复做一件事情
1.if单分支
if条件判断语句的写法:
if (表达式){
执行语句
}
当括号内的表达式结果成立(为true时),则执行大括号内的语句,否则不执行。
注意:
if后面的()不能省略。
一条执行语句可以省略{}, 多条时不能省略{}, 建议不管是一条还是多条都写上{}
IF双分支语句
if双分支语句的写法:
if(表达式){
执行语句1
}else{
执行语句2
}
当if括号内的表达式结果成立,进入执行语句1,否则进入执行语句2;
- IF多分支语句
if多分支语句的写法:
if(表达式){
执行语句1
} else if(表达式2){
执行语句2
} else if(表达式3){
执行语句3
}else{
执行语句n
}
从上往下,满足哪个条件就执行其相对应的语句,都不满足时,执行最后的else的语句,只能进入其中之一。
- IF的嵌套
将整个if语句块插入另一个if语句块中if (表达式1) { if (表达式2) { if (表达式3) { 语句; } else { 语句; } } else{ 语句; } }
注意: 嵌套if时, 内层的每一对if-else代码要缩进且对齐;编写代码时,else要与最近的if配对。
- Switch语句的写法:
switch(表达式) {
case 常量1: 语句; break;
case 常量2: 语句; break;
…
case 常量n: 语句; break;
default:语句; break;
}
表达式的结果等于哪个case的常量,则执行其后的语句,执行完break就跳出switch结构,都不满足则执行default的语句。
break的作用:是跳出switch结构,如果没有break,则继续执行下面分支的的语句(而不进行判断)。
注意case穿透,要加break
switch的应用场景: 表达式为固定值, 不能判断范围
switch的比较是属于恒等于,也就是值与类型
都要一致!