javascript怎麼實現加減乘除運算

2022-09-29 18:01:29

實現方法:1、利用「+」、「-」、「*」、「/」、「%」符,可實現加法、減法、乘法、除法和取餘運算;2、利用「+=」、「-=」、「*=」、「/=」符,會先進行加減乘除運算,再將結果賦值給運運算元左側的變數;3、利用「++x」或「x++」符對變數的值進行自增(+1),利用利用「--x」或「x--」符對變數的值進行自減(-1)。

前端(vue)入門到精通課程:進入學習
API 檔案、設計、偵錯、自動化測試一體化共同作業工具:

本教學操作環境: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 += ba = a + b
-=減法運算並賦值a -= ba= a - b
*=乘法運算並賦值a *= ba = a * b
/=除法運算並賦值a /= ba = a / b
%=取模運算並賦值a %= ba = 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怎麼實現加減乘除運算的詳細內容,更多請關注TW511.COM其它相關文章!