什么是运算符?
在JavaScript中, 运算符是用于对操作数(值和变量)执行操作的特殊符号。例如,
2 + 3; // 5
+
是执行加法的运算符 , 2
和3
是操作数。
JavaScript运算符类型
这是您将在本教程中学习的不同运算符的列表。
- 赋值运算符
- 算术运算符
- 比较运算符
- 逻辑运算符
- 按位运算符
- 字符串运算符
- 其他运营商
JavaScript赋值运算符
赋值运算符是用来给变量赋值。例如,
let x = 5;
在此, =
运算符用于将值5
分配给变量x
。
以下是常用的赋值运算符的列表:
Operator | Name | Example |
---|---|---|
= |
Assignment operator | a = 7; // 7 |
+= |
Addition assignment | a += 5; // a = a + 5 |
-= |
Subtraction Assignment | a -= 2; // a = a - 2 |
*= |
Multiplication Assignment | a *= 3; // a = a * 3 |
/= |
Division Assignment | a /= 2; // a = a / 5 |
%= |
Remainder Assignment | a %= 2; // a = a % 2 |
**= |
Exponentiation Assignment | a **= 2; // a = a^2 |
注意:常用的赋值运算符是=
。学习算术运算运算符 ,您将了解其他赋值运算符,例如+=
, -=
和*=
等。
JavaScript算术运算符
算术运算运算符用于执行算术计算 。例如,
let number = 3 + 5; // 8
此处, +
运算符用于添加两个操作数。
Operator | Name | Example |
---|---|---|
+ |
Addition | x + y |
- |
Subtraction | x - y |
* |
Multiplication | x * y |
/ |
Division | x / y |
% |
Remainder | x % y |
++ |
Increment (increments by 1) | ++x or x++ |
-- |
Decrement (decrements by 1) | --x or x-- |
** |
Exponentiation (Power) | x ** y |
示例1:JavaScript中的算术运算运算符
let x = 5;
let y = 3;
// addition
console.log('x + y = ', x + y);
// subtraction
console.log('x - y = ', x - y);
// multiplication
console.log('x * y = ', x * y);
// division
console.log('x / y = ', x / y);
// remainder
console.log('x % y = ', x % y);
// increment
console.log('++x = ', ++x); // x is now 6
console.log('x++ = ', x++); // x returns 6 and then increases by 1
console.log('x = ', x);
// decrement
console.log('--x = ', --x); // x is now 6
console.log('x-- = ', x--); // x returns 6 and then increases by 1
console.log('x = ', x);
//exponentiation
console.log('x ** y =', x ** y);
访问++和- 运算符以了解更多信息。
输出
x + y = 8
x - y = 2
x * y = 15
x / y = 1.6666666666666667
x % y = 2
++x = 6
x++ = 6
x = 7
--x = 6
x-- = 6
x = 5
x ** y = 125
注意 :EcmaScript 2016中引入了** 运算符 。而且,某些浏览器可能不支持幂运算符。要了解更多信息,请访问JavaScript指数浏览器支持。
JavaScript比较运算符
运算符 比较两个值,然后返回布尔值true
或false
。例如,
let a = 3, b = 2;
console.log(a > b); // true
这里,比较运算符 >
用于比较一个是否大于b。
Operator | Description | Example |
---|---|---|
== |
Equal to: returns true if the operands are equal |
x == y |
!= |
Not equal to: returns true if the operands are not equal |
x != y |
=== |
Strict equal to: true if the operands are equal and of the same type |
x === y |
!== |
Strict not equal to: true if the operands are equal but of different type or not equal at all |
x !== y |
> |
Greater than: true if left operand is greater than the right operand |
x > y |
>= |
Greater than or equal to: true if left operand is greater than or equal to the right operand |
x >= y |
< |
Less than: true if the left operand is less than the right operand |
x < y |
<= |
Less than or equal to: true if the left operand is less than or equal to the right operand |
x <= y |
示例2:JavaScript中的运算符
// equal operator
console.log(2 == 2); // true
console.log(2 == '2'); // true
// not equal operator
console.log(3 != 2); // true
console.log('hello' != 'Hello'); // true
// strict equal operator
console.log(2 === 2); // true
console.log(2 === '2'); // false
// strict not equal operator
console.log(2 !== '2'); // false
console.log(2 !== '2'); // true
输出
true
true
true
true
true
false
false
true
运算符用于决策和循环。您将了解在后面的教程中详细讲述了用比较运算符 。
JavaScript逻辑运算符
逻辑运算符执行逻辑运算并返回布尔值true
或false
。例如,
let x = 5, y = 3;
(x < 6) && (y < 5); // true
在这里, &&
是逻辑运算符 AND 。由于x < 6
和y < 5
都为true
,因此结果为true
。
Operator | Description | Example |
---|---|---|
&& |
Logical AND: true if both the operands are true , else returns false |
x && y |
|| |
Logical OR: true if either of the operands is true ; returns false if both are false |
x || y |
! |
Logical NOT: true if the operand is false and vice-versa. |
!x |
示例3:JavaScript中的逻辑运算符
// logical AND
console.log(true && true); // true
console.log(true && false); // false
// logical OR
console.log(true || false); // true
// logical NOT
console.log(!true); // false
输出
true
false
true
false
逻辑运算符用于决策和循环。您将在后面的教程中详细了解逻辑运算符的用法。
JavaScript按位运算符
按位运算符对数字的二进制表示形式执行操作。
Operator | Description |
---|---|
& |
Bitwise AND |
| |
Bitwise OR |
^ |
Bitwise XOR |
~ |
Bitwise NOT |
<< |
Left shift |
>> |
Sign-propagating right shift |
>>> |
Zero-fill right shift |
在日常编程中很少使用按位运算符 。如果您有兴趣,请访问JavaScript位运算符以了解更多信息。
JavaScript字符串运算符
在JavaScript中,您还可以使用+
运算符来连接(联接)两个或多个字符串。
示例4:JavaScript中的字符串运算符
// concatenation operator
console.log('hello' + 'world');
let a = 'JavaScript';
a += ' tutorial'; // a = a + ' tutorial';
console.log(a);
输出
helloworld
JavaScript tutorial
注意:当+
与字符串使用时,它将执行串联。但是,当+
与数字一起使用时,它将执行加法运算。
其他JavaScript运算子
为了完整起见,下面列出了JavaScript中可用的其他运算符 。您将在后面的教程中了解这些运算符 。
Operator | Description | Example |
---|---|---|
, |
evaluates multiple operands and returns the value of the last operand. | let a = (1, 3 , 4); // 4 |
?: |
returns value based on the condition | (5 > 3) ? 'success' : 'error'; // "success" |
delete |
deletes an object’s property, or an element of an array | delete x |
typeof |
returns a string indicating the data type | typeof 3; // "number" |
void |
discards the expression’s return value | void(x) |
in |
returns true if the specified property is in the object |
prop in object |
instanceof |
returns true if the specified object is of of the specified object type |
object instanceof object_type |