运算符
赋值运算符 (=):将等号右边的值赋予给左边
自增自减运算符(一元运算符)
a++ ++后置 先使用 后自增
++a ++前置 先自增 后使用
a-- --后置 先使用 后自减
--a --前置 先自减 后使用
逻辑运算符
与 (&&)
在与运算过程,表达式只要有一个为false,则其后面的表达式不再解析,当前表达式直接返回false表达式的值,如果所有的表达式值都为true,则当前表达式返回最后一个为true表达式的值;
特点:子表达式全为真,表达式与结果才为真
或 (||)
在或运算过程,表达式只要有一个为true,则其后面的表达式不再解析,当前表达式直接返回true表达式的值,如果所有的表达式值都为false,则当前表达式返回最后一个为false表达式的值;
特点:子表达式全为假,表达式或结果才为假
非 (!)
取反操作,若当前表达式为true,取反则为false;反之亦然
比较运算符
符号 >、 <、 >=、 <=、 ==、 ===、 !=、 !==
特点
1.比较运算符的结果都是布尔值
console.log(2 > 1);
onsole.log(1 > 2);
2.>= <= 这个理解为大于或者等于 小于或者等于
console.log( 5 >= 5 );
console.log( 5 <= 5 );
3.== 等于 只要内容相等即可
console.log(3 == 3); //true
console.log(3 == '3'); //true
console.log(0 == false); //true
4.=== 全等 全等不仅仅是内容相等 同时需要比较类型
console.log(3 === '3');
5.!= 比较内容即可 !== 不仅比较内容还比较类型
console.log(3 !== '3');
6.特殊情况
如果是数字和字符串数字的比较 则字符串数字会自动转换成数字去比较
如果是字符串和字符串比较 则会每一个字符的ASCII码去进行比较
- 汉字的unicode编码值:http://bianma.supfree.net/
涉及到NAN都是false (NaN)
如果是布尔值参与比较 布尔值会转换成数字0和1
操作符优先级
优先级从高到低
1. () 优先级最高
2. 一元运算符 ++ -- !
3. 算数运算符 先* / % 后 + -
4. 关系运算符 > >= < <=
5. 相等运算符 == != === !==
6. 逻辑运算符 先&& 后||
7. 赋值运算符
表达式和语句
表达式
可以产生一个值的式子就是表达式 在现阶段可以理解为有运算符(不包括赋值运算符)的地方就是表达式 如:a++ 1+2+3;
语句
语句可以理解为一个行为 语句中可以包含表达式 如:var a = 1; var b = 2 + 4 + 6;
分类
顺序语句 自上而下执行的语句,之前学习的语句,都可以归纳为顺序语句
分支语句 根据不同的条件去执行不同的语句
循环语句 根据满足循环条件,执行循环体内的语句块
分支语句
if-else
if
if(条件){
条件为真则执行大括号里面的代码
}
if-else
if(条件){
条件为真则执行大括号里面的代码
}else{
条件为假则执行这个括号里面的代码
}
else if
if(条件1){
条件1为真则执行这里的代码 并且不会继续执行下面的条件分支
}else if(条件2){
如果条件1为假
并且条件2为真则执行这里的代码 并且不会继续执行下面的条件分支
}else if(条件3){
...
}else{
上述条件都不成立 则执行这里的代码
}
三元运算符
语法 条件 ? 语句1 : 语句2 ;
1. 如果条件为true,会返回语句1
2. 如果条件为false,会返回语句2
switch
语法:
switch (表达式){
case "值":
//语句;
break;
case "值":
//语句;
break;
}
特点
1.switch不能完全替代if-else(switch只能进行定值判断,无法进行区间判断)
2.switch的条件比较是全等,不仅比较数据的值,还比较数据类型
3.switch和break配合使用,如果没有break,会产生case穿透
调试断点
断点调试是指自己在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。
步骤
浏览器中按F12-->sources-->找到需要调试的文件-->在程序的某一行设置断点
相关操作
Watch:监视,通过watch可以监视变量的值的变化,非常的常用。
F10:程序单步执行,让程序一行一行的执行,这个时候,观察watch中变量的值的变化。
F8:跳到下一个断点处,如果后面没有断点了,则程序执行结束。
while循环语句
语法
while(条件){
条件为真时会不断执行这个代码 直到while的条件为假
}
注意
while循环里面的条件的值是会发生变化的 如果没有变化 则就是一个死循环