iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 5
0

前言

這次主要是將變數做一些合併運算,不同類型又會有什麼效果呢?

常見運算

算術練習

原本是要將下面的數字或字串定義成變數,利用 var = 某值 ;來顯示
為了方便直接思考,所以省略

var a = 1;
var b = 2;
console.log(a + b);

在 test.js 輸入以下程式,並使用 Chrome 確認結果

console.log(1 + 2); // 印出 3
console.log("1" + "2"); // 印出 12
console.log(1 + "2"); // 印出 12
console.log("1" + 2); // 印出 12

console.log(1 - 2); // 印出 -1
console.log("1" - "2"); // 印出 -1
console.log(1 - "2"); // 印出 -1
console.log("1" - 2); // 印出 -1

console.log("hello" + 123); // 印出 hello123
console.log("hello" - 123); // 印出 NaN(Not a Number)

console.log(3 * 2); // 印出 6
console.log("3" * "2"); // 印出 6
console.log(3 * "2"); // 印出 6
console.log("3" * 2); // 印出 6

console.log(5 / 2); // 印出 2.5
console.log("5" / "2"); // 印出 2.5
console.log(5 / "2"); // 印出 2.5
console.log("5" / 2); // 印出 2.5

console.log("hello" * 3); // 印出 NaN(Not a Number)
console.log("hello" / 3); // 印出 NaN(Not a Number)

console.log(1 + 3 * 2); // 印出 7
console.log((1 + 3) * 2); // 印出 8

看出什麼

  • JS 會幫忙做"自動轉型"
  • 如果是數字和字串的 + 運算,會轉成字串
  • 如果是數字和字串的 - 運算,會轉成數字,無法運算則出現 NaN (Not a Number)
  • 先乘除後加減,( )內先運算
  • 不同類型的運算基本上還沒找到一個完整說明,但因為自動轉型的關係,可能會跟想的不一樣,因此需要確認,免得出現錯誤,或是不要混用

次回

利用變數來做個簡單的計算範例吧!


上一篇
Day04 - 變數(01)
下一篇
Day06 - 變數(03) - BMI
系列文
JavaScript 新手筆記31

1 則留言

0
Ashe Li
iT邦新手 5 級 ‧ 2019-10-01 02:00:10

不同型別的運算基本上還沒找到一個完整說明 ==> 其實有喔 我這次主題有寫到 XDD

不過初期可以先用嚴格相等(===),等到熟悉之後再回來看 不同型別的一般相等(==)運算即可。

hokou iT邦新手 5 級 ‧ 2019-10-15 15:49:37 檢舉

謝謝,完賽了才有心思回文
不確定是哪篇,所以就全部搬過來了

https://ithelp.ithome.com.tw/users/20120757/ironman/2708

Ashe Li iT邦新手 5 級 ‧ 2019-10-16 13:46:36 檢舉

https://github.com/getify/You-Dont-Know-JS/blob/1st-ed/types%20&%20grammar/README.md

我的文章可能要先看書,才有幫助。
不然其實沒有太多時間可以寫很細~

我要留言

立即登入留言