运算符

运算符

 

目录

一、运算符

 

1、基本运算符

2、一元运算符

3、位运算符

4、比较运算符

5、等值运算符

6、赋值运算符

7、二元逻辑运算符

8、条件运算符(三目运算符)

9、逗号运算符

 

二、运算符优先级

 


一、运算符

 

1、基本运算符

+、-、*、/、%

注意:加法运算(+)也可以用作字符串的拼接。

2、一元运算符

  • 自增运算(++)
  • 自减运算(--)
  • 正值运算(+)
  • 负值运算(-)
  • 否运算(~)
  • 取反运算(!)
  • delete 运算(delete)
  • void 运算(void)
  • typeof 运算(typeof)
var a = 10, b = 20;

// 自增运算
console.log(10 === a++);// true
console.log(12 === ++a);// true

// 自减运算
console.log(12 === a--);// true
console.log(10 === --a);// true

// 正值运算
console.log(10 === +a);// true

// 负值运算
console.log(0-10 === -a);// true

// 否运算
console.log(-11 === ~a);// true

// 取反运算
console.log(false === !a);// true

// delete 运算
console.log(true === delete a.fake);// true

// void 运算
console.log(undefined === void a);// true

// typeof 运算
console.log("number" === typeof a);// true

3、位运算符

<<、>>、>>>、&、^、|

var a = 10, b = 20;

// 左移运算
console.log(80 === (a << 3));// true

// 无符号右移运算
console.log(2 === (a >> 2));// true

// 带符号右移运算
console.log(2 === (a >>> 2));// true

// 与运算
console.log(2 === (a & 3));// true

// 异或运算
console.log(9 === (a ^ 3));// true

// 或运算
console.log(11 === (a | 3));// true

4、比较运算符

<、>、<=、>=

5、等值运算符

==、!=、===、!==

var a = 10, b = 20;

// 等号
console.log(false === (a == b));// true

// 非等号
console.log(true === (a != b));// false

// 全等号
console.log(false === (a === b));// true

// 非全等号
console.log(true === (a !== b));// false

6、赋值运算符

var a = 10;

a = 10; a *= 10;
console.log(100 === a);// true

a = 10; a /= 5;
console.log(2 === a);// true

a = 10; a %= 7;
console.log(3 === a);// true

a = 10; a += 5;
console.log(15 === a);// true

a = 10; a -= 11;
console.log(-1 === a);// true

a = 10; a <<= 10;
console.log(10240 === a);// true

a = 10; a >>= 2;
console.log(2 === a);// true

a = 10; a >>>= 2;
console.log(2 === a);// true

a = 10; a &= 3;
console.log(2 === a);// true

a = 10; a ^= 3;
console.log(9 === a);// true

a = 10; a |= 3;
console.log(11 === a);// true

7、二元逻辑运算符

&&、||

var a = 10, b = 20;

// 逻辑与
console.log(20 === (a && b));// true

// 逻辑或
console.log(10 === (a || b));// true

8、条件运算符(三目运算符)

var a = 10, b = 20;

//条件运算符
console.log(20 === (a >= 10 ? a + 10 : b + 10));// true

9、逗号运算符

var a = 10, b = 20;

//逗号运算符
console.log(20 === (a, b));// true

 


二、运算符优先级

 

优先级运算符说明结合性
20( ... )括号n/a
19... . ...成员访问从左到右
 ... [ ... ]成员访问从左到右
 ... ( ... )函数调用从左到右
17... ++后置递增n/a
 ... --后置递减n/a
16! ...逻辑非从右到左
 ~ ...按位非从右到左
 + ...一元加法从右到左
 - ...一元减法从右到左
 ++ ...前置递增从右到左
 -- ...前置递减从右到左
 typeof ...typeof从右到左
 void ...void从右到左
 delete ...delete从右到左
14... * ...乘法从左到右
 ... / ...除法从左到右
 ... % ...取模从左到右
13... + ...加法从左到右
 ... - ...减法从左到右
12... << ...按位左移从左到右
 ... >> ...按位右移从左到右
 ... >>> ...无符号右移从左到右
11... < ...小于从左到右
 ... <= ...小于等于从左到右
 ... > ...大于从左到右
 ... >= ...大于等于从左到右
10... == ...等号从左到右
 ... != ...非等号从左到右
 ... === ...全等号从左到右
 ... !== ...非全等号从左到右
9... & ...按位与从左到右
8... ^ ...按位异或从左到右
7...  ...按位或从左到右
6... && ...逻辑与从左到右
5... || ...逻辑或从左到右
4... ? ... : ...条件运算符从右到左
3... = ...赋值从右到左
 ... += ...赋值从右到左
 ... -= ...赋值从右到左
 ... *= ...赋值从右到左
 ... /= ...赋值从右到左
 ... %= ...赋值从右到左
 ... <<= ...赋值从右到左
 ... >>= ...赋值从右到左
 ... >>>= ...赋值从右到左
 ... &= ...赋值从右到左
 ... ^= ...赋值从右到左
 ... |= ...赋值从右到左
0... , ...逗号从左到右

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值