JavaScript运算符

123 阅读3分钟

运算符

运算符也被称为操作符,是用于实现赋值,比较和执行算数运算功能的符号。

1. 算术运算符

运算符描述实例
+1+1=2
-2-1=1
*2*1=2
/6/2=3
%取余6%2=0(返回除法的余数)

表达式和返回值

  1. 由数字,运算符,变量等组成的式子 我们称之为表达式
  2. console.log(1 + 1); //得出的结果为2,2就是返回值
  3. 2 = 1+1 ,在程序中的写法是把右边的表达式计算完毕后返回值给左边,例 var num = 1 + 1 ;

递增和递减运算符

!注意:递增和递减运算符必须配合变量使用

!注意:递增和递减运算符必须配合变量使用

!注意:递增和递减运算符必须配合变量使用

  1. 如果需要反复给数字变量加或减1,可以使用递增(++)递减(--)运算来完成

  2. 在JavaScript中,递增和递减运算符可以放在变量的前面,也可以放在变量的后面。当我们放在变量的前面时,我们可以称之为前置递增(递减)运算符,当我们放在变量后时,我们可以称之为后置递增(递减)运算符

  3. 前置运算符和后置运算符单独使用的话效果是一样的。

4.与其他代码联用时,所得到的结果是不同的。

5.开发时大多使用后置递增/递减。 但是

- 前置运算符是先自加,后返回原值。后置运算符是先返回原值, 后自加。

//前置运算符
    var num = 10;
    ++num ;  //相当于是 num = num + 1 ,输出结果为11
    var num_1 = 10;
    --num_1;   //相对于 num_1 = num_1 - 1 ,输出结果为9
    var p = 10;
    console.log(++p + 10);  //结果为11 + 10 =21
    
 //后置运算符
    var num = 10;
    num++; //输出结果为11
    a++;    //为11 
    var b = a++ + 1 ; //a++为后置运算符,返回原值在运算,所以b=12
    console.log(b);   //结果为12
    
 // 混合运算
var a = 10;
  console.log(a++ + ++a);  
  //首先a++=10,先返回原值,后自加,但是自加后a变成了11,所以++a=11+1,
  ++a=12,得出的结果为22

2.比较运算符

比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true/false)作为比较运算的结果。

运算符说明案例结果
<小于号1<2true
大于号1>2false
>=大于等于号2>=2true
<=小于等于号2<=1false
==判等号(等于运算符,会默认转换数据类型)37==37true
!=不等号37!=37false
=== !==全等(要求值和数据类型全等)37==="37"false

= 号总结

符号作用用法
=赋值把右边的给左边
==判断判断两边的值是否相等(注意此时有隐式转换)
===全等判断两边的值和数据类型是否完全相等

3.逻辑运算符

逻辑运算符说明案例
&&逻辑与,简称“与”andtrue&&false
逻辑非!true

逻辑或||,简称或 or ,true||false

逻辑与&&

//两侧都为true结果才为true
 console.log(3>2 && 3<2);  //false
   console.log(3>2 && 4>2);  // true

逻辑或

// 两侧都为false结果才是false
 console.log(3>2 || 3<2); //true
    console.log(3<2 || 3<3); //false

逻辑非

//取反
console.log(! true); //false
    console.log(! false); //true
短路运算(逻辑中断)

短路运算的原理∶当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值

1.逻辑与(逻辑中断)

  • 语法:表达式1&&表达式2
  • 如果第一个表达式的值为真,则返回表达式2
  • 如果第一个表达式的值为假,则返回表达式1
 console.log(123 && 456);      //结果456,123为真所以返回表达式2
  console.log(0 && 123);      //结果0 ,0为假(false),所以返回表达式1
 console.log(0 && 1221 && 123*66)  //0

2.逻辑或(逻辑中断)

  • 表达式1为真则返回表达式1
  • 表达式1为假则返回表达式2
console.log(1 || 0);   //1
console.log(0 || 3<1 || 1);  //1

4.赋值运算符

赋值运算符说明案例
=直接赋值var usrname = '我是值' ;
+= -=加、减一个数后再赋值var age = 10;age+= 5; //15
*= /= %=乘除,取余后再赋值var age_3 = 2; age_3=5; //10

var age = 10 ;

age += 5;ll相当于age = age + 5;

age -= 5;/相当于age = age - 5;

age *= 10; l/相当于age = age * 10;

5.运算符优先级

image.png