JavaScript—基础Day2
一、运算符
1. 赋值运算符
对变量进行赋值的运算符:将等号右边的值赋予给左边(必须是一个容器);
+= 、 -= 、*= 、 /=、%=
2. 一元运算符
**前置自增(++i):**先自加再使用
let i=1; console.log(++i +2) // 结果是4
**后置自增(i++):**先使用再自加
let i=1; console.log(i++ +2) // 结果是3
两者的区分:
<script type="text/jscript"> var s1 = 16 s2 = 31; var s = s1++; console.log('s=' + s); // 16 console.log('s1=' + s1); //17 s = ++s1; console.log('s=' + s); //18 console.log('s1=' + s1); //18 s = s2--; console.log('s=' + s); //31 console.log('s2=' + s2); //30 s = --s2; console.log('s=' + s); //30 console.log('s2=' + s2); //30 let i=1; console.log(i++ + ++i + i); //7 </script>
3. 比较运算符
- 字符串比较,是比较的字符对应的ASCII码,从左往右依次比较,如果第一位一样再比较第二位,以此类推;
- NaN不等于任何值,包括它本身 ,涉及到"NaN“ 都是false ;
- 尽量不要比较小数,因为小数有精度问题;
- 不同类型之间比较会发生隐式转换;
- 最终把数据隐式转换转成number类型再比较;
4. 逻辑运算符
5. 运算符优先级
二、语句
1. 表达式和语句
- 表达式可被求值,所以它可以写在赋值语句的右侧。
- 语句不一定有值,比如 alert() for和break 等语句就不能被用于赋值。
2. 分支语句
2.1 If分支语句
单分支语句:
if(条件){ 满足条件要执行的代码 }
双分支语句:
if(条件){ 满足条件要执行的代码 }else{ 不满足条件执行的代码 }
多分支语句:
if(条件1){ 代码1 }else if(条件2){ 代码2 }else if(条件3){ 代码3 }else{ 代码n }
- 括号内的条件为true时,进入大括号里执行代码
- 小括号内的结果若不是布尔类型时,会发生隐式转换转为布尔类型
2.2 三元运算符
条件?满足条件执行的代码:不满足条件执行的代码
2.3 switch语句
switch(数据){ case 值1: 代码1; break; case 值2: 代码2; break; default: 代码n; break; }
找到跟小括号里数据全等的case值,并执行里面对应的代码;
注意事项
- switch case语句一般用于等值判断,不适合于区间判断
- switch case一般需要配合break关键字使用 没有break会造成case穿透
3. 循环语句
3.1 循环本质:
- 以某个变量为起始值,然后不断产生变化量,慢慢靠近终止条件的过程;
3.2 三要素
let i=1; // 变量起始值 while(i<=3){ // 终止条件(没有终止条件,循环会一直执行,造成死循环) document.write('我会循环三次<br>'); i++; // 变量变化量 }
3.3 break与continue
- continue 退出本次循环,用于排除或者跳过某一个选项的时候
- break 退出整个循环, 后续循环不再执行