JavaScript—运算符

算术运算符

概念:算术运算使用的符号,用于执行两个变量或值的算术运算。

运算符 描述 例子
+ 1+1-2
- 1-1=0
* 1*1=1
/ 1/1=1
% 取模(取余数) 1%1=0
算数运算符
console.log(1 + 1);
    console.log(1 - 1);
    console.log(1 * 1);
    console.log(1 / 1);
    console.log(1 % 1);

注意:浮点数的最高精确值是17位小数点,但是在进行算术运算时精度远不如整数。(不要直接判断两个浮点数相等

算术运算符优先等级:先乘除,后加减,有先括号优先计算。

表达式和返回值

表达式:是由数字,运算符、变量等以能求得数值的有意义排列方法所得的组合。(由数字、运算符、变量等组成的式子)

查看代码
 console.log(1 + 1);//直接输出表达式“1+1”的结果,2是返回值
    var a = 1 + 1;//计算右边表达式把返回值给左边
    console.log(a);

在程序中表达式从右往左运算。

递增和递减运算符

需要反复给一个变量加或减1,可以使用递增(++)或递减(--)运算符来完成。

在JavaScript中,递增和递减既可以放在变量前,也可以放在变量后。放在前称为前置递增(递减)运算符,放在变量后称为后置递增(递减)运算符。

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

前置递增运算符

++a前置递增,就是自加1,类似于a=a+1。(使用口诀:先自加,后返回值)

前置自增
var a = 1;
    console.log(++a);//输出结果为2

后置递增运算符

a++后置递增,就是自加1,类似于a=a+1。(使用口诀:先返回值,后自加)

后置自增
var a = 1;
    console.log(a++);//输出结果为1

前置递增和后置递增单独使用效果一样。

前置与后置区分
 var a = 1;
    var b;
    b = a++ + ++a;
    console.log(b);

比较运算符

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

运算符名称 说明 例子 结果
< 小于号 1<0 false
> 大于号 1>0 ture
>= 大于等于号 1>=0 ture
<= 小于等于号 1<=0 false
== 判等号(会转型) 1==0 false
!= 不等号 1!=0 ture
===   !== 全等号,要求值与类型一致 1==='1' false
比较运算符
console.log(1 > 0);
    console.log(1 < 0);
    console.log(1 >= 0);
    console.log(1 <= 0);
    console.log(1 == 0);
    console.log(1 != 0);
    console.log(1 === '1');
    console.log(0 !== '0');

逻辑运算符

概念:逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件的判断。

逻辑运算符 说明 案例
&& “逻辑与”,简称“与”and ture &&false
|| “逻辑或”,简称“或”or ture||false
! “逻辑非”,简称“非”not !ture

逻辑与&&:两边为真(true)才为真(true),一侧为假则是假。

逻辑或||:两边为假(false)才为假(false),一侧为真则是真。

逻辑非!:用于取一个布尔值相反的值。(取反符)。

逻辑运算符
 console.log(1 > 0 && 0 > 1);
    console.log(1 > 0 || 0 > 1);
    console.log(!true);

短路运算(逻辑中断)

原理:当多个表达式(值)时,左边的表达式可以确定结果时,不再运算右边的表达式的值。

逻辑与短路:如果表达式1为真,直接返回表达式2,反之,直接返回表达式1。

如果有空或者否定的为假,其余为真例如0、''、null、undefined、NaN均为假。

逻辑与中断
console.log(1 && 2);
    console.log(0 && 1);
    console.log(0 && 1 + 1 && 1 + 0);

逻辑或短路:如果表达式1结果为真,则返回表达式1。反之返回表达式2。

逻辑或中断
console.log(1 || 0);
    console.log(1 || 1 || 0);
    console.log(0 || 1 || 2);

赋值运算符

概念:用来把数据赋值给变量的运算符。

赋值运算符 说明 例子
= 直接赋值 var name='example';
+=、-= 加、减一个数后赋值 var age=10;age+=1
*=、/=、%= 乘、除、取模后赋值 var age=1;age*=5
赋值运算符
var a = 1;
    console.log(a += 1);//等价于a=a+1
    console.log(a -= 1);//等价于a=a-1
    console.log(a *= 1);//等价于a=a*1

运算符优先级

优先级 运算符 顺序
1 小括号 ()
2 一元运算符 ++ -- !
3 算数运算符 先* / %后+ -
4 关系运算符 > >= < <= 
5 相等运算符 == != === !==
6 逻辑运算符 先&&后||
7 赋值运算符 =
8 逗号运算符 ,

一元运算符中逻辑非优先级很高

逻辑与比逻辑或优先级高

运算符优先级
     onsole.log(1 >= 0 || '鬼' != '人' && !(1 + 0 == 0) && true);
    var a = 1
    console.log(1 == 1 / 2 && (2 + 2 * a).toLocaleString() === '2');

 

posted @ 2023-09-01 19:20  Dr丶云幕  阅读(7)  评论(0编辑  收藏  举报