欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ECMAScript 加性運(yùn)算符

在多數(shù)程序設(shè)計(jì)語(yǔ)言中,加性運(yùn)算符(即加號(hào)或減號(hào))通常是最簡(jiǎn)單的數(shù)學(xué)運(yùn)算符。

在 ECMAScript 中,加性運(yùn)算符有大量的特殊行為。

加法運(yùn)算符

法運(yùn)算符由加號(hào)(+)表示:

var iResult = 1 + 2

與乘性運(yùn)算符一樣,在處理特殊值時(shí),ECMAScript 中的加法也有一些特殊行為:

  • 某個(gè)運(yùn)算數(shù)是 NaN,那么結(jié)果為 NaN。
  • -Infinity 加 -Infinity,結(jié)果為 -Infinity。
  • Infinity 加 -Infinity,結(jié)果為 NaN。
  • +0 加 +0,結(jié)果為 +0。
  • -0 加 +0,結(jié)果為 +0。
  • -0 加 -0,結(jié)果為 -0。

不過(guò),如果某個(gè)運(yùn)算數(shù)是字符串,那么采用下列規(guī)則:

  • 如果兩個(gè)運(yùn)算數(shù)都是字符串,把第二個(gè)字符串連接到第一個(gè)上。
  • 如果只有一個(gè)運(yùn)算數(shù)是字符串,把另一個(gè)運(yùn)算數(shù)轉(zhuǎn)換成字符串,結(jié)果是兩個(gè)字符串連接成的字符串。

例如:

var result = 5 + 5;	//兩個(gè)數(shù)字
alert(result);		//輸出 "10"
var result2 = 5 + "5";	//一個(gè)數(shù)字和一個(gè)字符串
alert(result);		//輸出 "55"

這段代碼說(shuō)明了加法運(yùn)算符的兩種模式之間的差別。正常情況下,5+5 等于 10(原始數(shù)值),如上述代碼中前兩行所示。不過(guò),如果把一個(gè)運(yùn)算數(shù)改為字符串 "5",那么結(jié)果將變?yōu)?"55"(原始的字符串值),因?yàn)榱硪粋(gè)運(yùn)算數(shù)也會(huì)被轉(zhuǎn)換為字符串。

注意:為了避免 JavaScript 中的一種常見(jiàn)錯(cuò)誤,在使用加法運(yùn)算符時(shí),一定要仔細(xì)檢查運(yùn)算數(shù)的數(shù)據(jù)類型。

減法運(yùn)算符

減法運(yùn)算符(-),也是一個(gè)常用的運(yùn)算符:

var iResult = 2 - 1;

與加法運(yùn)算符一樣,在處理特殊值時(shí),減法運(yùn)算符也有一些特殊行為:

  • 某個(gè)運(yùn)算數(shù)是 NaN,那么結(jié)果為 NaN。
  • Infinity 減 Infinity,結(jié)果為 NaN。
  • -Infinity 減 -Infinity,結(jié)果為 NaN。
  • Infinity 減 -Infinity,結(jié)果為 Infinity。
  • -Infinity 減 Infinity,結(jié)果為 -Infinity。
  • +0 減 +0,結(jié)果為 +0。
  • -0 減 -0,結(jié)果為 -0。
  • +0 減 -0,結(jié)果為 +0。
  • 某個(gè)運(yùn)算符不是數(shù)字,那么結(jié)果為 NaN。

注釋:如果運(yùn)算數(shù)都是數(shù)字,那么執(zhí)行常規(guī)的減法運(yùn)算,并返回結(jié)果。