- JavaScript运算符(操作符)通过运算符可以对一个或则多个值进行运算,并获取运算结果。
- 算数运算符:同级运算,从左到右
+ 加
可以对两个值进行加法运算,如果是两个字符串则进行字符串拼接
任何值和字符串做加法运算,都会先转为字符串,然后再和字符串做拼接操作
也可以通过"+"完成隐式转换。
- 减
对两个值进行减法运算
* 乘
对两个值进行乘法运算
/ 除
对两个值进行除法运算
% 取模
取模运算(取余数)
++ 自增
-- 自减
设y=5;
+ |
加 |
x=y+2 |
x=7 |
- |
减 |
x=y-2 |
x=3 |
* |
乘 |
x=y*2 |
x=10 |
/ |
除 |
x=y/2 |
x=2.5 |
% |
求余数 (保留整数) |
x=y%2 |
x=1 |
++ |
累加 |
x=++y |
x=6 |
-- |
递减 |
x=--y |
x=4 |
任何值做 - * / 运算时自动转换为Number可以利用这一特性完成隐式转换
71
- 逻辑运算符:
! 非
- !可以用来对一个值进行非运算
所谓非运算就是对一个布尔值进行取反操作
false变为true ,true变为false
- 如果对一个值(布尔值)进行2次非运算,它的值不改变
- 如果对非布尔值进行运算,则先将它准换为布尔值,再取反操作
利用这一特点,可以将一个值转换为布尔类型:两次非运算
&& 与
- &&可以对符号两则的值进行与运算并返回结果
运算规则:两个值只要有一个false,则返回false
两个值都是flase的情况下,返回true(负负得正)
- JS中的"与",只要第一个为false,则返回false。
|| 或
- ||可以对符号两则的值进行或运算并返回结果
运算规则:两个值只要有一个true,则返回true
两个值都是false的情况下,返回false
- JS中的"或",只要第一个为true,则返回true。不会再去检查第二个值
72
- 赋值运算符:
= 赋值符
可以将符号右侧的值赋值给左侧的变量
+=
num+=2 =>等价于 num=num+2;
-=
num-=2 =>等价于 num=num-2;
*=
num*=2 =>等价于 num=num*2;
/=
num/=2 =>等价于 num=num/2;
%=
num%=2 =>等价于 num=num%2;
73
设x=10,y=5;
运算符 |
例子 |
等价于 |
结果 |
= |
x=y |
x=5 | |
+= |
x+=y |
x=x+y |
x=15 |
-= |
x-=y |
x=x-y |
x=5 |
*= |
x*=y |
x=x*y |
x=50 |
/= |
x/=y |
x=x/y |
x=2 |
%= |
x%=y |
x=x%y |
x=0 |
- 关系运算符:
> 大于
>= 大于等于
< 小于
<=小于等于
运算的结果为布尔值
- 相等运算符:
== 表示相等的意思
!= 表示不等的意思
=== 全等(数据类型与值都相等)
!== 不全等
运算的结果为布尔值
设x=5;
== |
等于 |
x==8 为 false |
=== |
全等(值和类型) |
x===5 为 true;x==="5" 为 false |
!= |
不等于 |
x!=8 为 true |
> |
大于 |
x>8 为 false |
< |
小于 |
x<8 为 true |
>= |
大于或等于 |
x>=8 为 false |
<= |
小于或等于 |
x<=8 为 true |
- 条件运算符(三元运算符):
语法:条件表达式?语句1:语句2;
执行的流程:
条件运算符在执行时,首先对表达式进行求值。
如果该值为true,则执行语句1,并返回执行结果
如果该值为false,则执行语句2,并返回执行结果
74
- 运算符的优先级(跟数学的一样先乘除 再加减 有括号先算括号里面的)
算术操作符 → (关系运算符)比较操作符 → 逻辑操作符 → "="赋值符号
(+,-,*,/,++,--,%) (<,>,==,===,<=,>=,!=) (&&,||,!) (=,+=,-=,..)
- 流程
程序中的三种基本流程结构:
1. 顺序结构
2. 分支结构
3. 循环结构
顺序结构:按照顺序一条一条的执行代码,从上到下。
分支结构:执行代码的时候,可以根据条件进行选择,条件越多对应的结果越多,分支也就越多。例如if…else…语句,switch语句
循环语句:用来重复不断的做一件事,for循环,while循环,do…while循环