JavaScript中所有二元操作符列表

11

我正在尝试了解在JavaScript中只使用二元运算符(binary operators)可以实现什么。到目前为止,我已经发现的二元运算符列表如下所示。它们主要来自于这个列表,但是否还有其他的呢?

请注意,我特别关注的是二元运算符,根据上述提到的来源,这被定义为您与两个对象一起使用的二元运算符(这是否准确?)。我还添加了@zessx的补充。

+   //Add
-   //Subtract
/   //Divided by
*   //Multiple
%   //Modulus
<   //Less than
>   //Greater than
&   //AND
|   //OR
^   //XOR
~   //Invert each bits
<<  //Move all bits onto the left
>>  //Move all bits onto the right
>>> //Move all bits onto the right and fill left end with 0

1
谷歌搜索结果第一项:http://web.eecs.umich.edu/~bartlett/jsops.html - Marcelo De Zen
这个链接对我来说看起来不错。http://bit.ly/SApOip - Lee Taylor
1
真的不确定为什么这被投票点踩。我确信肯定有一个很好的理由,但是我真的不确定是什么。 - fakeguybrushthreepwood
@u1sonderzug 因为这些信息在互联网上非常普遍。只需谷歌一下即可。 - Lee Taylor
我知道在Google等搜索引擎上找到操作符列表相对来说比较简单,但是我特别想了解其中哪些是二元操作符。这只是我最近学到的一个术语,所以我还在努力弄清楚什么是二元操作符。 - fakeguybrushthreepwood
显示剩余2条评论
3个回答

15
您可以在规范中的表达式章节中找到完整的列表,请参见规范。因为最“常规”的操作符是二元操作符(请参见维基百科上的定义),它们未被明确列出(就像一元和三元操作符那样)。它们包括:
  • 乘法运算符
    • *运算符
    • /运算符
    • %运算符
  • 加法运算符
    • 加法运算符(+)
    • 减法运算符(-)
  • 位移运算符
    • 左移运算符(<<)
    • 带符号右移运算符(>>)
    • 无符号右移运算符(>>>)
  • 关系运算符
    • 小于运算符(<)
    • 大于运算符(>)
    • 小于等于运算符(<=)
    • 大于等于运算符(>=)
    • instanceof运算符
    • in运算符
  • 等式运算符
    • 相等运算符(==)
    • 不等运算符(!=)
    • 严格相等运算符(===)
    • 严格不等运算符(!==)
  • 二进制位运算符(&, ^, |)
  • 二进制逻辑运算符(&&, ||)

从技术角度来说,赋值运算符和逗号运算符也是二元运算符。


11

JavaScript语言支持以下算术运算符。

假设变量A的值为10,变量B的值为20,则:

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

这里是原始页面链接。


条件表达式(也称为“三元运算符”)不是二元运算符。 - Bergi
@Bergi 这篇文章发布后问题已经被修改。最初它是在讨论所有运算符。 - Lee Taylor
好的,但是你忘记了所有那些一元运算符,比如!或者new... - Bergi

1
+   //Add
-   //Subtract
/   //Divided By
*   //Multiple
%   //Modulus
<   //Less than
>   //Greater than
!   //Not
&   //And
|   //Or
^   //Xor
~   //Invert each bits
<<  //Move all bits onto the left
>>  //Move all bits onto the right
>>> //Move all bits onto the right and fill left end with 0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接