多个数字和数字字符串混合运算规则

在说规则之前,我们先来看一下下面的代码的结果:

 1     console.log(1 +  "2" + "2"); // 122
 2 
 3     console.log(1 +  +"2" + "2"); // 32
 4 
 5     console.log(1 +  -"1" + "2"); // 02
 6 
 7     console.log(+"1" +  "1" + "2"); // 112
 8 
 9     console.log( "A" - "B" + "2"); // NaN2
10 
11     console.log( "A" - "B" + 2); // NaN

规则:

1.多个数字和数字字符串混合运算时,跟操作数的位置有关。

如:

console.log(2 + 1 + '3'); / /‘33’

console.log('3' + 2 + 1); //'321'

2.数字字符串之前存在数字中的正负号(+/-)时,会被转换成数字

如:

console.log(typeof '3');   // string

console.log(typeof +'3'); //number

3.可以在数字前添加 '',将数字转为字符串

如:

console.log(typeof 3);   // number

console.log(typeof (''+3)); //string

4.对于运算结果不能转换成数字的,将返回 NaN

如:

console.log('a' * 'sd');   //NaN

console.log('A' - 'B'); // NaN

posted @ 2017-01-10 18:37  芒果酱-Jessie  阅读(735)  评论(0编辑  收藏  举报