值类型
JS能够根据不同的环境自动转化数据类型。这是隐形和自动的,所以有时候出bug了会有点莫名其妙。
这是在教学视频里截的图,码一下~
引用型
1.对象在逻辑运算环境中的转换
规律:无论什么类型对象,只要非空,在逻辑环境中的返回值都是true。
举个例子:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>test1</title>
</head>
<script>
function f()
{
var a=new Boolean(false); //布尔型
if(a) //即使a的值为false,包装对象也为true
{
document.write(a,"<br>"); //false
}
var b=new Number(0); //数值型
if(a) //true
{
document.write(b,"<br>"); //0
}
var c=new String("false","<br>"); //字符串型
if(a) //true
{
document.write(c); //字符串false
}
}
</script>
<body>
<script>
f();
</script>
</body>
</html>
2.对象在数值运算环境中的转换