Rumah > Artikel > hujung hadapan web > 浅谈JS中String()与 .toString()的区别
我们知道String()与 .toString()都是可以转换为字符串类型,但是String()与 .toString()的还是有区别的
1、.toString()可以将所有的的数据都转换为字符串,但是要排除null 和 undefined
例如将false转为字符串类型
<script> var str = false.toString(); console.log(str, typeof str); </script>
返回的结果为 false,string
看看null 和 undefined能不能转换为字符串
<blockquote style="margin-right: 0px;" dir="ltr"><pre class="html" name="code"><script> var str = null.toString(); console.log(str, typeof str); </script>
结果程序报错
<script> var str = undefined.toString(); console.log(str, typeof str); </script>
程序也报错
.toString() 括号中的可以写一个数字,代表进制,对应进制字符串
二进制:.toString(2);
八进制:.toString(8);
十进制:.toString(10);
十六进制:.toString(16);
2、String()可以将null和undefined转换为字符串,但是没法转进制字符串
例如将null转换为字符串
<script> var str = String(null); console.log(str, typeof str); </script>
返回的结果为 null,string
将undefined转换为字符串
<script> var str = String(undefined); console.log(str, typeof str); </script>
返回的结果为 undefined,string