JavaScript如何使用算术运算符?用法示例

2021年3月31日17:20:22 发表评论 622 次浏览

JavaScript算术运算符是对数值进行运算并返回数值的运算符。 JavaScript中有许多运算符。每个操作符及其示例在下面进行描述。

1.加法(+)加法运算符采用两个数值操作数并给出其数值和。它还可以连接两个字符串或数字。

语法如下:

a + b

例子:

// Number + Number => Addition 
1 + 2 gives 3

// Number + String => Concatenation
5 + "hello" gives "5Hello"

2.减法(-)减法运算符以数值形式给出两个操作数的差。

语法如下:

a - b

例子:

// Number - Number => Subtraction 
10 - 7 gives 3

"Hello" - 1 gives Nan

3.乘法(*)乘法运算符给出操作数的乘积, 其中一个操作数是被乘数, 另一个是乘数。

语法如下:

a * b

例子:

// Number * Number => Multiplication
3 * 3 gives 9
-4 * 4 gives -16

Infinity * 0 gives NaN
Infinity * Infinity gives Infinity
'hi' * 2 gives NaN

4.除法(/)除法运算符提供其操作数的商, 其中右操作数为除数, 左操作数为被除数。

语法如下:

a / b

例子:

// Number / Number => Division
5 / 2 gives 2.5
1.0 / 2.0 gives 0.5

3.0 / 0 gives Infinity
4.0 / 0.0 gives Infinity, because 0.0 == 0
2.0 / -0.0 gives -Infinity

5.模数(%)模运算符返回除数除以除数时剩下的余数。模运算符也称为余数运算符。它带有分红的迹象。

语法如下:

a % b

例子:

// Number % Number => Modulus of the number

9 % 5 gives 4
-12 % 5 gives -2
1 % -2 gives 1
5.5 % 2 gives 1.5
-4 % 2 gives -0

NaN % 2 gives NaN

6.求幂(**)求幂运算符给出将第一个操作数提高到第二个操作数的幂的结果。求幂运算符是右关联的。

语法如下:

a ** b

在JavaScript中, 无法编写模棱两可的幂表达式, 即你不能在基数之前紧跟一元运算符(+ /-/〜〜/!/ delete / void)。

例子:

// Number ** Number => Exponenial of the number

-4 ** 2 // This is an incorrect expression
-(4 ** 2) gives -16, this is a correct expression
2 ** 5 gives 32
3 ** 3 gives 27
3 ** 2.5 gives 15.588457268119896
10 ** -2 gives 0.01
2 ** 3 ** 2 gives 512
 
NaN ** 2 gives NaN

7.增量(++)增量运算符将其操作数递增(加1)并返回一个值。

  • 如果在操作数后使用带运算符的后缀(例如x ++), 则它将递增并在递增之前返回值。
  • 如果在操作数前使用带运算符的前缀(例如++ x), 则它会递增并在递增后返回值。

语法如下:

a++ or ++a

例子:

// Postfix 
var a = 2;
b = x++; // b = 2, a = 3

// Prefix
var x = 5;
y = ++x; // x = 6, y = 6

8.减量(–)减量运算符将其操作数减量(减去一个)并返回一个值。

  • 如果使用后缀, 则操作符在操作数之后(例如x–), 然后递减并在递减之前返回值。
  • 如果使用前缀, 并且运算符在操作数之前(例如–x), 则它会递减并在减后返回值。

语法如下:

a-- or --a

例子:

// Prefix
var x = 2;
y = --x; gives x = 1, y = 1

// Postfix 
var x = 3;
y = x--; gives y = 3, x = 2

9.一元(-)这是一元运算符, 即, 它对单个操作数进行运算。它给出了操作数的取反。

语法如下:

-a

例子:

var a = 3;
b = -a; gives b = -3, a = 3

// Unary negation operator
// can convert non-numbers
// into a number
var a = "3";
b = -a; gives b = -3

10.一元(+)这是一种将非数字转换为数字的方法。尽管一元否定(-)也可以转换非数字, 但一元加号是将某物转换为数字的最快且首选的方式, 因为它不会对该数字执行任何其他运算。

语法如下:

+a

例子:

+4     gives 4
+'2'   gives 2
+true  gives 1
+false gives 0
+null  gives 0

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: