您的位置:首页 > Web前端 > JavaScript

JavaScript的隐式类型转换

2016-03-26 21:40 525 查看
一、JavaScript的数据类型弱类型,在使用算术运算符时,运算符两边的数据类型可以是任意的,比如,一个字符串可以和数字相加。之所以不同的数据类型之间可以做运算,是因为JavaScript引擎在运算之前会悄悄的把他们进行了隐式类型转换的,如下是数值类型和布尔类型的相加:
1+true;//2

二、比如-, *, /,和%等算术运算符都会把操作数转换成数字的,但是“+”号就有点不一样了,有些情况下,它是算术加号,有些情况下,是字符串连接符号,具体的要看它的操作数,如下:

2+1;//3
“hello”+“world”;//hello
world
但是,如果字符串和数字相加,会是怎样的结果呢?JavaScript会自动把数字转换成字符的,不管数字在前还是字符串在前;
需要注意的是,“+”的运算方向是从左到右的,如下:
3+4+“2”;//72

三、我们可以通过函数判断是否NaN,如下:

function isReallyNaN(x){
return x!==x;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: