本文是 JavaScript 中各操作符相关的内容(ECMA 标准)。
位(&,|,^)
ECMA: 13.12.1 Runtime Semantics: Evaluation
& 位“与”操作。
| 位“或”操作。
^ 位“异或”操作。
INFO
BitwiseANDExpression : BitwiseANDExpression & EqualityExpression
Return ? EvaluateStringOrNumericBinaryExpression(BitwiseANDExpression, &, EqualityExpression).
BitwiseXORExpression :
BitwiseXORExpression ^ BitwiseANDExpression
Return ? EvaluateStringOrNumericBinaryExpression(BitwiseXORExpression, ^, BitwiseANDExpression).
BitwiseORExpression :
BitwiseORExpression | BitwiseXORExpression
Return ? EvaluateStringOrNumericBinaryExpression(BitwiseORExpression, |, BitwiseXORExpression).
EvaluateStringOrNumericBinaryExpression(leftOperand, opText, rightOperand)
:
|
|
ApplyStringOrNumericBinaryOperator(lval, opText, rval)
opText 支持的 操作符类型(table-1):
opText | operation |
---|---|
** | T::exponentiate |
* | T::multiply |
/ | T::divide |
% | T::remainder |
+ | T::add |
- | T::subtract |
<< | T::leftShift |
>> | T::signedRightShift |
>>> | T::unsignedRightShift |
&(与) | T::bitwiseAND |
^(异或) | T::bitwiseXOR |
或 | T::bitwiseOR |
|
|