将一个数据类型转换为其他的数据类型。
转换为String
<script type="text/javascript">
var a = 123;
console.log(typeof(a));
console.log(a);
</script>
方法一
调用被转换数据类型的toString()方法。
<script type="text/javascript">
var a = 123;
console.log(typeof(a.toString()));
console.log(a.toString());
console.log(typeof(a));
</script>
从上图可以看到,不会改变a的数据类型。
如果想改变a的数据类型,除了重新赋值以外,还可以这么写。
<script type="text/javascript">
var a = 123;
a=a.toString();
console.log(typeof(a));
</script>
这里要注意,如果变量是null:
<script type="text/javascript">
var a = null;
console.log(typeof(a.toString()));
</script>
报错
如果值是undefined:
<script type="text/javascript">
var a = undefined;
console.log(typeof(a.toString()));
</script>
也报错。
出现报错是因为null和undefined没有toString()方法。
方法二
调用String()函数。
<script type="text/javascript">
var a = 123;
console.log(typeof(String(a)));
console.log(String(a));
console.log(typeof(a));
</script>
这个函数对于null和undefined是可以的。
拿null测试一下。
<script type="text/javascript">
var a = null;
console.log(typeof(String(a)));
console.log(String(a));
console.log(typeof(a));
</script>
对于Number和Boolean,String()底层是调用toString()。但是对于null和undefined,则是直接将null转换为"null",将undefined转换为"undefined"。