实现方法:1、利用“+”、“-”、“*”、“/”、“%”符,可实现加法、减法、乘法、除法和取余运算;2、利用“+=”、“-=”、“*=”、“/=”符,会先进行加减乘除运算,再将结果赋值给运算符左侧的变量;3、利用“++x”或“x++”符对变量的值进行自增(+1),利用利用“--x”或“x--”符对变量的值进行自减(-1)。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
在javascript中,可以利用运算符实现加减乘除四则运算。运算符是用来告诉 JavaScript 引擎执行某种操作的符号,例如加号(+)表示执行加法运算,减号(-)表示执行减法运算等。
一:算术运算符
算数运算符用来执行常见的数学运算,例如加法、减法、乘法、除法等,下表中列举了 JavaScript 中支持的算术运算符:
运算符 | 描述 | 示例 |
---|---|---|
+ | 加法运算符 | x + y 表示计算 x 加 y 的和 |
- | 减法运算符 | x - y 表示计算 x 减 y 的差 |
* | 乘法运算符 | x * y 表示计算 x 乘 y 的积 |
/ | 除法运算符 | x / y 表示计算 x 除以 y 的商 |
% | 取模(取余)运算符 | x % y 表示计算 x 除以 y 的余数 |
加法运算符
示例1
注意特殊操作数的求和运算。
var n = 5; //定义并初始化任意一个数值 console.log(NaN + n); //NaN与任意操作数相加,结果都是NaN console.log(Infinity + n); //Infinity与任意操作数相加,结果都是Infinity console.log(Infinity + Infinity); //Infinity与Infinity相加,结果是Infinity console.log((-Infinity) + (-Infinity)); //负Infinity相加,结果是负Infinity console.log((-Infinity) + Infinity); //正负Infinity相加,结果是NaN
示例2
加运算符能够根据操作数的数据类型,决定是相加操作,还是相连操作。
console.log(1 + 1); //如果操作数都是数值,则进行相加运算 console.log(1 + "1"); //如果操作数中有一个是字符串,则进行相连运算 console.log(3.0 + 4.3 + ""); //先求和,再连接,返回"7.3" console.log(3.0 + "" + 4.3); //先连接,再连接,返回"34.3" //3.0转换为字符串3
在使用加法运算符时,应先检查操作数的数据类型是否符合需要。
减法运算符
示例1
注意特殊操作数的减法运算。
var n = 5; //定义并初始化任意一个数值 console.log(NaN - n); //NaN与任意操作数相减,结果都是NaN console.log(Infinity - n); //Infinity与任意操作数相减,结果都是Infinity console.log(Infinity - Infinity); //Infinity与Infinity相减,结果是NaN console.log((-Infinity) - (-Infinity)); //负Infinity相减,结果是NaN console.log((-Infinity) - Infinity); //正负Infinity相减,结果是-Infinity
示例2
在减法运算中,如果操作数为字符串,先尝试把它转换为数值,再进行运算。如果有一个操作数不是数字,则返回 NaN。
console.log(2 - "1"); //返回1 console.log(2 - "a"); //返回NaN
使用值减去 0,可以快速把值转换为数字。例如 HTTP 请求中查询字符串一般都是字符串型数字,可以先把这些参数值减去 0 转换为数值。这与调用 parseFloat() 方法的结果相同,但减法更高效、快捷。减法运算符的隐性转换如果失败,则返回 NaN,这与使用 parseFloat() 方法执行转换时的返回值是不同的。
例如,对于字符串“100aaa”而言,parseFloat() 方法能够解析出前面几个数字,而对于减法运算符来说,则必须是完整的数字,才可以进行转换。
console.log(parseFloat("100aaa")); //返回100 console.log("100aaa" - 0); //返回NaN
对于布尔值来说,parseFloat() 方法能够把 true 转换为 1,把 false 转换为 0,而减法运算符视其为 NaN。
对于对象来说,parseFloat() 方法会尝试调用对象的 toString() 方法进行转换,而减法运算符先尝试调用对象的 valueOf() 方法进行转换,失败之后再调用 toString() 进行转换。
乘法运算符
注意特殊操作数的乘法运算。
var n = 5; //定义并初始化任意一个数值 console.log(NaN * n); //NaN与任意操作数相乘,结果都是NaN console.log(Infinity * n); //Infinity与任意非零正数相乘,结果都是Infinity console.log(Infinity * (- n)); //Infinity与任意非零负数相乘,结果是-Infinity console.log(Infinity * 0); //Infinity与0相乘,结果是NaN console.log(Infinity * Infinity); //Infinity与Infinity相乘,结果是Infinity
除法运算符
注意特殊操作数的除法运算。
var n = 5; //定义并初始化任意一个数值 console.log(NaN / n); //如果一个操作数是NaN,结果都是NaN console.log(Infinity / n); //Infinity被任意数字除,结果是Infinity或-Infinity //符号由第二个操作数的符号决定 console.log(Infinity / Infinity); //返回NaN console.log(n / 0); //0除一个非无穷大的数字,结果是Infinity或-Infinity,符号由第二个操作数的符号决定 console.log(n / -0); //返回-Infinity,解释同上
求余运算符
求余运算也称模运算例如:
console.log(3 % 2); //返回余数1
模运算主要针对整数进行操作,也适用于浮点数。例如:
console.log(3.1 % 2.3); //返回余数0.8000000000000003
示例
注意特殊操作数的求余运算。
var n = 5; //定义并初始化任意一个数值 console.log(Infinity % n); //返回NaN console.log(Infinity % Infinity); //返回NaN console.log(n % Infinity); //返回5 console.log(0 % n); //返回0 console.log(0 % Infinity); //返回0 console.log(n % 0); //返回NaN console.log(Infinity % 0); //返回NaN
二:赋值运算符
赋值运算符用来为变量赋值,有以下两种形式:
简单的赋值运算 = :把等号右侧操作数的值直接复制给左侧的操作数,因此左侧操作数的值会发生变化。
附加操作的赋值运算:赋值之前先对右侧操作数执行某种操作,然后把运算结果复制给左侧操作数。
一些附加操作的赋值运算就可以实现加减乘除四则运算。具体说明如表所示:
赋值运算符 | 说明 | 示例 | 等效于 |
---|---|---|---|
+= | 加法运算或连接操作并赋值 | a += b | a = a + b |
-= | 减法运算并赋值 | a -= b | a= a - b |
*= | 乘法运算并赋值 | a *= b | a = a * b |
/= | 除法运算并赋值 | a /= b | a = a / b |
%= | 取模运算并赋值 | a %= b | a = a % b |
示例代码如下:
var x = 10; x += 20; console.log(x); // 输出:30 var x = 12, y = 7; x -= y; console.log(x); // 输出:5 x = 5; x *= 25; console.log(x); // 输出:125 x = 50; x /= 10; console.log(x); // 输出:5 x = 100; x %= 15; console.log(x); // 输出:10
三:自增、自减运算符
自增、自减运算符用来对变量的值进行自增(+1)、自减(-1)操作,下表中列举了 JavaScript 中支持的自增、自减运算符:
运算符 | 名称 | 影响 |
---|---|---|
++x | 自增运算符 | 将 x 加 1,然后返回 x 的值 |
x++ | 自增运算符 | 返回 x 的值,然后再将 x 加 1 |
--x | 自减运算符 | 将 x 减 1,然后返回 x 的值 |
x-- | 自减运算符 | 返回 x 的值,然后将 x 减 1 |
示例代码如下:
var x; x = 10; console.log(++x); // 输出:11 console.log(x); // 输出:11 x = 10; console.log(x++); // 输出:10 console.log(x); // 输出:11 x = 10; console.log(--x); // 输出:9 console.log(x); // 输出:9 x = 10; console.log(x--); // 输出:10 console.log(x); // 输出:9
【相关推荐:javascript视频教程、编程基础视频】
以上是javascript怎么实现加减乘除运算的详细内容。更多信息请关注PHP中文网其他相关文章!