运算符:
JS中我们定义了一套对数据进行运算的运算符。
这其中包括:算数运算符,位运算符,关系运算符。
算术运算符:
算术运算符故名思议就是进行算术操作的运算符。
JS为我们提供了很多的种算术运算符。
算数运算符:+ - * / 四种运算就不用多介绍了
++(前置)自增 ++(后置)自增
--(前置) 自减 --(后置)自减


自增自减:
自增和自减分为前置运算和后置元素。
所谓的前置元素就是将元素符放到变量的前边,而后置将元素放到变量
的后面。
例子:前置自增:++a.
后置自减:a--
运算符在前置时,表达式等于变量原值。
运算符在后置是,表达式值等于变量变更以后的值。
逻辑操作符:
一般情况下使用逻辑运算符会返回一个布尔值。
逻辑运算符主要有三个:非 &&与 and 遇到False得False || 或 or 遇到true得true
在进行逻辑操作时如果操作数不是布尔值类型则会将其转换布尔类型在计算。
非使用符号!表示,与使用&&表示,或使用||表示。
非:
非运算符使用!表示。
非运算符可以应用于任何值,无论是是什么类型,这个运算符都会返回一个布尔值。
非运算符会对原值取反,比如原值是TRUE使用非运算符会返回false,原始为false使用飞运算符会返回TRUE。
与:
与运算符使用&&表示。
对于非布尔值运算,会将非布尔值转换为布尔值。
对布尔值做运算时,如果两个值都为true则返回true, 否则返回false。
或:
或运算符使用 || 表示。
或运算符可以应用于任何数据类型,且不一定返回布尔值。
对于非布尔值运算,会先将非布尔值转换为布尔值。
对布尔值进行运算时,如果两个值都为false则返回false, 否则返回true。
非布尔值时:如果两个都为false ,则返回第二个值,否 则返回靠前true的值
赋值运算符:
简单的赋值操作符由等于号 ( = ) 表示, 其作用就是把右侧的值赋给左侧的变量。
如果在等于号左边添加加减乘除等运算符, 就可以完成复合赋值操作。
+=、*=、-=、/=、%=
比如:a+=10和a=a+10是一样的。

关系运算符:
小于(<) 、大于(>) 、小于等于(<=)和大于等于(>=) 这几个关系运算符用于对两个值进行比较,比较的规则与我们 在数学课上所学的一样。
这几个运算符都返回一个布尔值。用来表示两个值之间的关系 是否成立。
5 > 10 false
5 < 10 true
5 <= 10 true
5 >= 10 false
相等:
S中使用==来判断两个值是否相等,如果相等则返回
true。
使用!=来表示两个值是否不相等,如果不等则返回true。
注意:null和undefined使用==判断时是相等的。
全等:
除了==以外,JS中还提供了===。
===表示全等,他和==基本一致,不过==在判断两个值 时会进行自动的类型转换,而===不会。
也就是说”55”==55会返回true,而”55”===55会返回 false;
同样我们还有!==表示不全等,同样比较时不会自动转型。
也就是说”55”!=55会返回false,而”55”!==55会返回 true;
逗号运算符:
使用逗号可以在一条语句中执行多次操作。
比如:var num1=1, num2=2, num3=3;
使用逗号运算符分隔的语句会从左到右顺 序依次执行。

条件运算符:
条件运算符也称为三元运算符。通常运算符写为?:。
这个运算符需要三个操作数,第一个操作数在?之前, 第二个操作数在?和:之间,第三个操作数在:之后。
例如:x > 0 ? x : -x // 求x的绝对值
上边的例子,首先会执行x>0,如果返回true则执行冒 号左边的代码,并将结果返回,这里就是返回x本身, 如果返回false则执行冒号右边的代码,并将结果返回

运算符的优先级:

如果先用哪个最好加括号:()
代码块:
代码块是在大括号 {} 中所写的语句,以此将 多条语句的集合视为一条语句来使用。
例如:

我们一般使用代码块将需要一起执行的语句进 行分组,需要注意的是,代码块结尾不需要加 分号。
网友评论