算术运算符
算术运算符使用数值(字面量或者变量)作为操作数进行运算并返回一个数值。
标准的算术运算符就是加减乘除 +
、-
、*
和 /
。
当操作数是浮点数时,这些运算符表现得跟它们在大多数编程语言中一样(特殊要注意的是,除零会产生 Infinity
)。
运算符 | 描述 | 示例 |
---|---|---|
+ |
加法 | 1 + 1 = 2 |
- |
减法 | 2 - 1 = 1 |
* |
乘法 | 3 * 3 = 9 |
/ |
除法 | 10 / 5 = 2 |
% |
求余,返回相除后余值 | 12 % 5 = 2 |
++ |
自增(更新运算符),分为前自增和后自增 | 具体参考 更新运算符 |
-- |
自减(更新运算符),分为前自减和后自减 | 具体参考 更新运算符 |
- |
一元负值符,返回操作数的负值 | -foo |
+ |
一元正值符,若操作数在操作前非数字类型,将试图将其转换成数字类型 | +foo |
** |
指数运算符,计算 base(底数) 的 exponent(指数)次方 | 2 ** 3 = 8 |
实践示例
console.log(-9 % 2);
// -1
console.log(1 + -+(+(+-+1)));
// 2
实现指数运算符
function calculateExponent(base, exponent) {
if (exponent === 1) {
return base;
} else {
return base * calculateExponent(base, exponent - 1);
}
}