JavaScript 操作符

时间:2019-08-20 13:50:43  来源:igfitidea点击:

什么是操作符?

在数学表达式 1+2=3 中:

1和2被称为操作数(被操作数),而“+”被称为操作符(运算符),“=” 表示赋值运算符

JavaScript支持以下类型的操作符。

  1. 算术运算符

  2. 比较运算符

  3. 逻辑(或关系)操作符

  4. 赋值操作符

  5. 条件(或三元)运算符

JS 算术运算符

算术运算符即加减乘除等

假设 num1 = 20, num2= 6

操作符说明示例结果
+加法num3 = num1 + num2num1 = 20
num2 = 6
num3=26
-减法num3 = num1 - num2num1 = 20
num2 = 6
num3=14
*乘法num3 = num1 * num2num1 = 20
num2 = 6
num3=120
/除法num3 = num1 / num2num1 = 20
num2 = 6
num3=3.3333
%取余数num3 = num1 % num2num1 = 20
num2 = 6
num3=2
++自增1num1++num1 = 21
++自增1,注意先赋值后自增num3 = num1++num3 = 20(先赋值)
num1=21(后自增)
++自增1,注意先自增后赋值num3 = ++num1num1 = 21(先自增)
num3=21(后赋值)
--自减1num1--num1 = 19
--自减1,注意先赋值后自减num3 = num1--num3 = 20(先赋值)
num1=19(后自减)
--自减1,注意先自减后赋值num3 = --num1num1 = 19(先自减)
num3=19(后赋值)

加号还可以用于连接两个字符串

var name = "Hyman" + " " + "liu";
console.log(name); // Hyman liu

JS 比较运算符

JavaScript支持以下比较运算符

假设 num1 = 20, num2= 6

操作符说明示例结果
==检查两个操作数的值是否相等,如果相等,则条件为true。num1 ==num2false
===检查两个操作数的类型和值是否相等,如果都相等,则条件为true。num1 === num2false
!=检查两个操作数的值是否相等,如果值不相等,则条件为true。num1 !=num2true
>检查左操作数的值是否大于右操作数的值,如果是,则条件为true。num1 > num2true
<检查左操作数的值是否小于右操作数的值,如果是,则条件为true。num1 < num2false
>=检查左操作数的值是否大于或等于右操作数的值,如果是,则条件为true。num1 >= num2true
<检查左操作数的值是否小于或等于右操作数的值,如果是,则条件为true。num1 <= num2false

JS 逻辑运算符

JavaScript支持以下逻辑运算符

假设 boolA = true, boolB= false

操作符说明示例结果
&&逻辑与, 如果两个操作数都非零,则结果为true。boolA && boolBfalse
||逻辑或, 如果两个操作数中的任何一个是非零的,则条件为true 。boolA || boolBfalse
!逻辑非 ,逻辑状态取反!boolAfalse

按位操作符

JavaScript支持以下位操作符

假设变量num1为2,变量num2为3 ,变量num3为-5

操作符说明示例结果
&按位与(对应位都为1,则该位为1)num1 & num22
|按位或(对应位有1位为1,则该位为1)num1 & num23
^按位异或 (对应位不同,则该位为1)num1 ^ num21
~按位取反~num2-4
<<左移N位num1 <<2
>>右移N位(最左边符号位不变)num3>>3-1
>>>带零右移N位(左边符号位填充0)num3>>3536870911

JS 赋值操作符

JavaScript支持以下赋值操作符

操作符说明示例结果
=将右侧操作数赋值给左侧操作数C = A + B把A + B的值赋给C
+=相加并赋值,将右操作数和左操作数相加并将结果赋给左操作数。C += A等同于C = C + A
−=相减并赋值,左操作数中减去右操作数,并将结果赋给左操作数。C -= A等同于C = C - A
*=相乘并赋值,左操作数中乘以右操作数,并将结果赋给左操作数。C *= A等同于C = C * A
/=相除并赋值,左操作数中除以右操作数,并将结果赋给左操作数。C /= A等同于C = C / A
%=相减并赋值,将左操作数除以右操作数,并将余数赋给左操作数。C %= A等同于C = C % A

JS 条件运算符

条件运算符(?:)首先计算一个条件表达式,然后根据计算结果执行两个给定语句中的一个。

语法:

(条件)? (语句1): (语句2)

如果条件为true,则执行语句1,否则执行语句2

示例

var a =20,b=10,c;

c = (a > b) ? 100 : 200

因为a>b, 所有 c=100.

typeof操作符

JS typeof运算符是一个一元运算符,它放在操作数之前,
它将返回表示操作数的数据类型的字符串。

变量类型typeof返回值
Number"number"
String"string"
Boolean"boolean"
Object"object"
Function"function"
Undefined"undefined"
Null"object"