这个符号在 JavaScript 中是什么意思?

IT技术 javascript
2020-12-12 00:18:14

这是什么?

这是一个不时出现的关于 JavaScript 语法的问题集合。这也是一个社区维基,所以邀请大家参与维护这个列表。

为什么是这样?

Stack Overflow 不允许搜索特定字符。因此,在搜索时不容易找到有关运算符和其他语法标记的许多问题。这也使得关闭重复项更加困难。下面的列表有助于解决这个问题。

主要思想是在 Stack Overflow 上提供指向现有问题的链接,因此我们可以更轻松地引用它们,而不是从 ECMAScript 规范中复制内容。

此外,这是PHP符号参考的公然副本我们需要一个 JS 的。


请帮忙。编辑并添加指向其他运算符/语法参考的链接,或者如果您找不到有关特定语法的好问题/答案,请添加此问题的答案并将其链接

1个回答

请参阅 MDN 上有关表达式、运算符语句的文档

基本关键字和一般表达式

this 关键词:

var x = function()vs. function x() - 函数声明语法

(function(){})() — IIFE(立即调用函数表达式)

someFunction()() — 返回其他函数的函数

=> — 等号,大于:箭头函数表达式语法

|> — 管道,大于:管道运算符

function*, yield, yield* — 在function之后加星标yield:生成器函数

[], Array() — 方括号:数组表示法

如果方括号出现在赋值 ( [a] = ...)的左侧或函数的参数内部,则它是一个解构赋值

{key: value} — 大括号:对象字面量语法(不要与块混淆)

如果大括号出现在赋值 ( { a } = ...)的左侧或函数的参数内部,则它是一个解构赋值

`${}` — 反引号,带大括号的美元符号:模板文字

// — 斜线:正则表达式文字

$ — 正则表达式中的美元符号替换模式:$$, $&, $`, $',$n

() — 括号:分组运算符


属性相关的表达

obj.prop, obj[prop], obj["prop"] — 方括号或点:属性访问器

?., ?.[], ?.() — 问号、点:可选链操作符

:: — 双冒号:绑定运算符

new 操作员

...iter ——三个点:展开语法;其余参数


递增和递减

++, -- — 双加或减:前/后自增/自减运算符


一元和二元(算术、逻辑、按位)运算符

delete 操作员

void 操作员

+, - — 加减:加法或串联,减法运算符;一元符号运算符

|, &, ^, ~ — 单管道、与号、抑扬符、波浪号:按位 OR、AND、XOR 和 NOT 运算符

% — 百分号:余数运算符

&&, ||, ! — 双与号、双管道、感叹号:逻辑运算符

?? — 双问号:nullish-coalescing 运算符

** — 双星:幂运算符(求幂)


等号运算符

==, === — 等号:等号运算符

!=, !== — 感叹号和等号:不等式运算符


位移运算符

<<, >>, >>> — 两个或三个尖括号:位移运算符


条件运算符

?:… — 问号和冒号:条件(三元)运算符


赋值运算符

= — 等号:赋值运算符

%= — 百分比等于:余数赋值

+= — 加等于:加法赋值运算符

&&=, ||=, ??= — 双与号、竖线或问号,后跟等号:逻辑赋值

解构


逗号运算符

, — 逗号运算符(不要与变量声明中使用的逗号混淆)


控制流

{} — 大括号:块(不要与对象字面量语法混淆)

声明

var, let, const — 声明变量


标签

label: — 冒号:标签


其他

123n — n整数后:BigInt

# — 哈希(数字符号):私有方法或私有字段