×

ECMAScript 基础

ECMAScript 语法ECMAScript 变量ECMAScript 关键字ECMAScript 保留字ECMAScript 原始值和引用值ECMAScript 原始类型ECMAScript 引用类型

ECMAScript 运算符

ECMAScript 位运算符ECMAScript Boolean 运算符ECMAScript 乘性运算符ECMAScript 加性运算符ECMAScript 关系运算符ECMAScript 等性运算符ECMAScript 条件运算符ECMAScript 赋值运算符ECMAScript 逗号运算符

ECMAScript 语句

ECMAScript if 语句ECMAScript 迭代语句ECMAScript 标签语句ECMAScript break & continueECMAScript with 语句ECMAScript switch 语句

ECMAScript 函数

ECMAScript 函数概述ECMAScript arguments 对象ECMAScript Function 对象ECMAScript 闭包(closure)

ECMAScript 对象

ECMAScript 面向对象技术ECMAScript 对象应用ECMAScript 对象类型ECMAScript 对象作用域ECMAScript 定义类或对象ECMAScript 修改对象

ECMAScript 继承

ECMAScript 继承机制实例ECMAScript 继承机制实现

ECMAScript 6 入门

ECMAScript 6 简介ECMAScript 6 let和const命令ECMAScript 6 变量的解构赋值ECMAScript 6 字符串的扩展ECMAScript 6 正则的扩展ECMAScript 6 数值的扩展ECMAScript 6 数组的扩展ECMAScript 6 函数的扩展ECMAScript 6 对象的扩展ECMAScript 6 SymbolECMAScript 6 Proxy和ReflectECMAScript 6 二进制数组ECMAScript 6 Set 和 MapECMAScript 6 Iterator和for...of循环ECMAScript 6 Generator 函数ECMAScript 6 Promise对象ECMAScript 6 异步操作和Async函数ECMAScript 6 ClassECMAScript 6 修饰器(Decorator)ECMAScript 6 ModuleECMAScript 6 编程风格读懂 ECMAScript 规格ECMAScript 6 参考链接

ECMAScript 加性运算符


在多数程序设计语言中,加性运算符(即加号或减号)通常是最简单的数学运算符。

在ECMAScript中,加性运算符有大量的特殊行为。

加法运算符

法运算符由加号(+)表示:

var iResult = 1 + 2

与乘性运算符一样,在处理特殊值时,ECMAScript中的加法也有一些特殊行为:

  • 某个运算数是NaN,那么结果为NaN。
  • -Infinity加-Infinity,结果为-Infinity。
  • Infinity加-Infinity,结果为NaN。
  • +0加+0,结果为+0。
  • -0加+0,结果为+0。
  • -0加-0,结果为-0。

不过,如果某个运算数是字符串,那么采用下列规则:

  • 如果两个运算数都是字符串,把第二个字符串连接到第一个上。
  • 如果只有一个运算数是字符串,把另一个运算数转换成字符串,结果是两个字符串连接成的字符串。

例如:

var result = 5 + 5;	//两个数字
alert(result);		//输出 "10"
var result2 = 5 + "5";	//一个数字和一个字符串
alert(result);		//输出 "55"

这段代码说明了加法运算符的两种模式之间的差别。正常情况下,5+5等于10(原始数值),如上述代码中前两行所示。不过,如果把一个运算数改为字符串"5",那么结果将变为"55"(原始的字符串值),因为另一个运算数也会被转换为字符串。

注意:为了避免JavaScript中的一种常见错误,在使用加法运算符时,一定要仔细检查运算数的数据类型。

减法运算符

减法运算符(-),也是一个常用的运算符:

var iResult = 2 - 1;

与加法运算符一样,在处理特殊值时,减法运算符也有一些特殊行为:

  • 某个运算数是NaN,那么结果为NaN。
  • Infinity减Infinity,结果为NaN。
  • -Infinity减-Infinity,结果为NaN。
  • Infinity减-Infinity,结果为Infinity。
  • -Infinity减Infinity,结果为-Infinity。
  • +0减+0,结果为+0。
  • -0减-0,结果为-0。
  • +0减-0,结果为+0。
  • 某个运算符不是数字,那么结果为NaN。

注释:如果运算数都是数字,那么执行常规的减法运算,并返回结果。


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)