Skip to content

运算符

HS 中包含各类语言常见的运算符(从上到下优先级递增):

赋值(=:=+=-=*=/=%=^=

例子:

js
let a = 5
// a == 10
a *= 2
// a == 8
a -= 2
// a == 7
// b == 7
const b = a := 7

条件(? :

例子:

js
// a == 1
const a = true ? 1 : 0

逻辑或(||

例子:

js
// a == true
const a = true || false

逻辑与(&&

例子:

js
// a == false
const a = true && false

按位或(|

例子:

js
(5 & 1) == 5

按位异或(^

例子:

js
(8 ^ 2) == 10

按位与(&

例子:

js
(5 & 7) == 5

相等比较(==!=

例子:

js
// a == false
const a = 1 == 5

比较(<<=>>=instanceof

例子:

js
2 <= 3 == true

左移(<<

例子:

js
2 << 2 == 8

算术右移(>>

例子:

js
8 >> 2 == 2

加减(+-

例子:

js
1.1 + 2.2 == 3.3

乘除模(*/%

例子:

js
// a == 6
const a = 3 * 2

幂(**

例子:

js
// a == 8
const a = 2 ** 3

单模运算(typeof, -!

例子:

js
// a = false
const a = !true

函数调用(()

例子:

js
const func = () => 5
// a == 5
const a = func()

成员访问(.[]

例子:

js
const a = {
  b: 5,
  c: "Hello",
}
// d == 6
const d = a.b + 1
// e == "Hello"
const e = a["c"]

按位取反(~

例子:

js
~4 == -5