浅谈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能不能转换为字符串javascript

<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

posted @ 2016-10-27 16:28  1565783227  阅读(21174)  评论(0编辑  收藏  举报