微信小程序 运算符

基本运算符

示例代码:

var a = 10, b = 20;

// 加法运算
console.log(30 === a + b);
// 减法运算
console.log(-10 === a - b);
// 乘法运算
console.log(200 === a * b);
// 除法运算
console.log(0.5 === a / b);
// 取余运算
console.log(10 === a % b);
  • 加法运算(+)也可以用作字符串的拼接。
var a = '.w' , b = 'xs';

// 字符串拼接
console.log('.wxs' === a + b);

一元运算符

示例代码:

var a = 10, b = 20;

// 自增运算
console.log(10 === a++);
console.log(12 === ++a);
// 自减运算
console.log(12 === a--);
console.log(10 === --a);
// 正值运算
console.log(10 === +a);
// 负值运算
console.log(0-10 === -a);
// 否运算
console.log(-11 === ~a);
// 取反运算
console.log(false === !a);
// delete 运算
console.log(true === delete a.fake);
// void 运算
console.log(undefined === void a);
// typeof 运算
console.log("number" === typeof a);

位运算符

示例代码:

var a = 10, b = 20;

// 左移运算
console.log(80 === (a << 3));
// 无符号右移运算
console.log(2 === (a >> 2));
// 带符号右移运算
console.log(2 === (a >>> 2));
// 与运算
console.log(2 === (a & 3));
// 异或运算
console.log(9 === (a ^ 3));
// 或运算
console.log(11 === (a | 3));

比较运算符

示例代码:

var a = 10, b = 20;

// 小于
console.log(true === (a < b));
// 大于
console.log(false === (a > b));
// 小于等于
console.log(true === (a <= b));
// 大于等于
console.log(false === (a >= b));

等值运算符

示例代码:

var a = 10, b = 20;

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

赋值运算符

示例代码:

var a = 10;

a = 10; a *= 10;
console.log(100 === a);
a = 10; a /= 5;
console.log(2 === a);
a = 10; a %= 7;
console.log(3 === a);
a = 10; a += 5;
console.log(15 === a);
a = 10; a -= 11;
console.log(-1 === a);
a = 10; a <<= 10;
console.log(10240 === a);
a = 10; a >>= 2;
console.log(2 === a);
a = 10; a >>>= 2;
console.log(2 === a);
a = 10; a &= 3;
console.log(2 === a);
a = 10; a ^= 3;
console.log(9 === a);
a = 10; a |= 3;
console.log(11 === a);

二元逻辑运算符

示例代码:

var a = 10, b = 20;

// 逻辑与
console.log(20 === (a && b));
// 逻辑或
console.log(10 === (a || b));

其他运算符

示例代码:

var a = 10, b = 20;

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

运算符优先级

优先级 运算符 说明 结合性
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 … , … 逗号 从左到右
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《微信小程序 运算符》
文章链接:https://zhuji.vsping.com/311082.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。