1.3JavaScript语言的分隔符(Separator)和运算符(Operator)

1.分隔符

分隔符名称描述
;分号语句分隔作用

2.一元运算符

运算符名称描述
+a取正a 的值本身。
-a取负a 的负值。
++a前递增a 的值加1,然后返回 a
--a前递减a 的值减1, 然后返回 a
a++后递增返回 a,然后将 a 的值加1。
a--后递减返回 a,然后将 a 的值减1。
delete 对象名.属性名
delete 数组名[索引]
————删除一个对象的属性或者一个数组中某一个索引对应的值。
typeof 操作数
typeof (操作数)
————返回一个表示 操作数 类型的字符串值。
void 表达式
void (表达式)
————表明一个运算没有返回值。

3.算术运算符

运算符名称描述
a + b加法a 和 b 的和。
a - b减法a 和 b 的差。
a * b乘法a 和 b 的积。
a / b除法a 除以 b 的商。
a % b取模a 除以 b 的余数。
a ** b求幂a 的 b次方 的值。

4.赋值运算符

运算符名称
a = b赋值
a += b加法赋值
a -= b减法赋值
a *= b乘法赋值
a /= b除法赋值
a %= b取模赋值
a **= b求幂赋值
a &&= b逻辑与赋值
a ||= b逻辑或赋值
a &= b按位与赋值
a |= b按位或赋值
a ^= b按位异或赋值
a <<= b左移位赋值
a >>= b有符号右移位赋值
a >>>= b无符号右移位赋值

5.关系比较运算符

运算符名称描述
a == b等于先进行强制类型转换,再比较 a 和 b 的值是否相等。
a === b等值等型不进行强制类型转换,再比较 a 和 b 的类型和值是否全相等,需类型和值同时都相等,即返回 true,否则 false。
a != b不等于先进行强制类型转换,再比较 a 和 b 的值是否不相等。
a !== b不等值或不等型不进行强制类型转换,再比较 a 和 b 的类型和值是否不相等,只需要类型和值至少其一不相等,即返回 true,否则 false。
a < b小于如果 a 小于 b,即返回 true,否则返回 false
a <= b小于或等于如果 a 小于或等于 b,即返回 true,否则返回 false
a > b大于如果 a 大于 b,即返回 true,否则返回 false
a >= b大于或等于如果 a 大于或等于 b,即返回 true,否则返回 false
属性名 in 对象名
数组索引 in 数组名
————如果所指定的对象中存在所指定的属性,则返回 true,否则 false
如果所指定的数组中存在所指定的索引,则返回 true,否则 false
对象名 instanceof 对象类型————如果所判别的对象确实是所指定的类型,则返回 true,否则 false

6.布尔逻辑运算符

运算符名称描述
!a逻辑非 NOT如果 a 的计算结果为 false,则 !a 的结果为 true,否则,结果为 false
a && b逻辑与 AND如果 a 和 b 的计算结果都为 true,则 a & b 的结果为 true,否则,结果为 false
a || b逻辑或 OR如果 a 或 b 的计算结果为 true,则 a | b 的结果为 true。 否则,结果为 false

7.位运算符

运算符名称示例结果
a ~ b按位非 NOT~ 5-6
a & b按位与 AND5 & 11
a | b按位或 OR5 | 15
a ^ b按位异或 XOR5 ^ 14
a << b左移位5 << 110
a >> b有符号右移位5 >> 12
a >>> b无符号右移位5 >>> 12

8.字符串连接符

运算符名称
+字符串连接

9.三元条件运算符

运算符描述
(expr1) ? (expr2) : (expr3)在 expr1 为 true 时,返回 expr2,否则返回 expr3。

10.Null运算符

运算符名称描述
a?.x可选链如果 a 为 null 或 undefined,则返回 undefined,否则 a?.x 的结果与 a.x 的结果相同。
a ?? bNull合并如果 a 为 null 或 undefined,则返回 b,否则返回 a。
a ??= bNull合并赋值如果 a 为 null 或 undefined,则将 b 赋值给 a,否则返回 a。

11.逗号运算符

示例描述
let num1 = 1, num2 = 2, num3 = 3;用来在一条语句中同时声明多个变量
let num = (5, 1, 4, 8, 0); // num 的值为 0对它的每个操作数从左到右求值,并返回最后一个操作数的值。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptlang/1944.html

(0)
上一篇 2020年8月3日 22:23
下一篇 2020年8月4日 02:23

相关推荐

  • 2.2JavaScript原始类型之字符串(String)

    1.单引号字符串和双引号字符串 JavaScript 语言的单引号字符串与双引号字符串一样,没有区别,所以以下一并讲解。 单引号字符串和双引号字符串支持所有转义序列。 单引号字符串和双引号字符串不支持对应引号内部的空格。 单引号字符串和双引号字符串不支持对应引号内部的字符串插值。 单引号字符串和双引号字符串不支持带标签…

  • 2.11JavaScript语言的异步函数

    1.异步函数声明 1.1async关键字 async 关键字可以用在函数声明、函数表达式、箭头函数和方法上,以代表此函数为异步函数,并非普通函数。 await 关键字只能在以 async 关键字声明的异步函数中使用,且异步函数中至少含有一个 await 关键字,不然异步函数就毫无意义地等同于普通函数。 1.2await…

  • 2.5JavaScript引用类型之数组(Array)

    数组是一种数据结构。 1.数组声明 2.稀疏(Sparse)数组 如果逗号之间形成了间隙(hole),我们可以将带有间隙的数组叫做稀疏(Sparse)数组,反之,不带间隙的数组叫做紧凑(Dense)数组。 3.多维数组 数组是可以嵌套的, 这就意味着一个数组可以作为一个元素被包含在另外一个数组里面。利用JavaScri…

发表回复

登录后才能评论