支付宝小程序框架 SJS·运算符

2020-09-18 10:28 更新

算术运算符

var a = 10, b = 20;
// 加法运算
console.log(30 === a + b);   //true
// 减法运算
console.log(-10 === a - b);  //true
// 乘法运算
console.log(200 === a * b);  //true
// 除法运算
console.log(0.5 === a / b);  //true
// 取余运算
console.log(10 === a % b);   //true

加法 + 运算符可用作字符串拼接。

var a = 'hello', b = ' alipay';
// 字符串拼接
console.log('hello alipay' === a + b);    //true

比较运算符

var a = 10, b = 20;


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

二元逻辑运算符

var a = 10, b = 20;
// 逻辑与
console.log(20 === (a && b));  //true
// 逻辑或
console.log(10 === (a || b));  //true
// 逻辑否,取反运算
console.log(false === !a);    //true

位运算符

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

赋值运算符

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

一元运算符

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

三元运算符

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

逗号运算符

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

运算符优先级

SJS 运算符的优先级与 Javascript 一致。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号