JavaScript 数学运算符 特殊字符 纯数字字符串

数学运算符 +, - ,* ,/ ,%, ()

运算顺序: 先算乘除取余,再加减, 又小括号的先算小括号。

正常运算大家都会,这里我主要讲一讲纯数字字符串 和 特殊字符(boolean,null, undefined, infinity, NaN)等

1. 纯数字的字符串也可以运算。只不过除了加法意外,都会进行隐式转换。 就是说我们不需要把它们进行格式转换,可以直接计算。

例如:

console.log ( "20" - 2); //result: 18
console.log ( "20" * 2); //result: 40

console.log ( "20" / 2); //result: 10
console.log ( "20" % 2); //result: 0

2. 特殊字符 true, false, null 在进行乘法,加法同样会进行隐式转换。

它会将 true = 1; false=0; null=0;

例如:

console.log ( 5 * true); //result: 5

console.log ( 5 * false); //result: 0

console.log ( 5 * null); //result: 0

console.log ( 5 + true); //result: 6

console.log ( 5 + false); //result: 5

console.log ( 5 + null); //result: 5

3. undefined和其他字符粗汉与数字进行数学运算(除了加法),结果都是NaN(not a number)

例如:

console.log ( 5 * undefined); //result: NaN

console.log ( 5 *  "Hello"); //result: NaN

但是 如果是进行加法:

console.log ( 5 + undefined); //result: NaN

console.log ( 5 + "Hello"); //result: 5Hello (这里是拼接)

同样,如果NaN与数字进行数学运算,结果还是NaN

例如:

console.log ( 1 + NaN); //result: NaN
console.log ( 1 - NaN); //result: NaN
console.log ( 1 * NaN); //result: NaN
console.log ( 1 / NaN); //result: NaN
console.log ( 1 % NaN); //result: NaN

Infinity与数字进行数学运算,结果是什么呢?

例如:

console.log ( 1 + Infinity); //result: Infinity
console.log ( 1 - Infinity); //result: -Infinity
console.log ( 1 * Infinity); //result: Infinity
console.log ( 1 / Infinity); //result: 0
console.log ( 1 % Infinity); //result: 1

如有错误,请留言指教,谢谢。

猜你喜欢

转载自www.cnblogs.com/ningxin/p/10100793.html
今日推荐