JS 中加減運算轉換規則
阿新 • • 發佈:2020-07-28
+加 (以下的轉化規則稱作隱式轉換)
-
1、如果兩邊都是數字,則就是普通的數學計算
-
2、如果有一邊是字串,則另一邊也轉成字串,變成字串的拼接
-
3、如果沒有字串,則呼叫Number方法,轉成數字,再進行相加
-
console.log(5 + '10'); // '510' console.log(5 + 10); // 15 var a = 5; var b = 10; // console.log('5+10的和是15'); console.log(a + '+' + b + '的和是' + a + b); console.log(a+ '+' + b + '的和是' + (a + b)); console.log(true + 1); // 2 console.log(true + false); // 1 console.log(true + ''); // 'true' console.log(false + null); // 0 console.log(undefined + null); // NaN console.log(true + 'false'); // 'truefalse' console.log(true + [true]); // 'truetrue'
-減 (以下的轉化規則稱作隱式轉換){* / % 都一樣}
-
1、如果兩邊都是數字,則就是普通的數學計算
-
2、如果兩邊有字元,會呼叫Number將其轉化為數字進行計算
-
3, 通過Number轉換null 轉化為0; undefined轉化為NaN;
console.log(100 - 10); // 90 console.log(100 - 't'); // NaN console.log(100 - ''); // 100 console.log(100 - true); // 99 console.log(100 - '80'); // 20 console.log(100 - null); // 100 console.log(100 - undefined); // NaN