js操作符“+”前后的类型转换
Posted 某个润滑君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js操作符“+”前后的类型转换相关的知识,希望对你有一定的参考价值。
先来思考一下如下代码输出什么
console.log(1+"4"+"2");
console.log(1+ +"2"+"2"); //注意加号与加号间是一个空格
console.log("A"-"B"+"2");
console.log("A"-"B"+2);
结果分别为:
"142","122","NaN2","NaN"
在js中,操作符+的两个操作数中若是有一个是字符串,则会将另一个操作数也变为字符串,所以第一句输出142;
而空格加一个“+”则是一个一元操作符,表示正2,因此会将它自动转换为Number,第二句输出32;
字符串之间执行减操作,会先将操作数转换为Number,Number(string)会返回NaN,所以第三句会输出NaN2;
NaN与任何数字进行加减操作都会返回NaN,因此第四句返回NaN
以上是关于js操作符“+”前后的类型转换的主要内容,如果未能解决你的问题,请参考以下文章