Maison  >  Article  >  interface Web  >  浅谈JS中String()与 .toString()的区别

浅谈JS中String()与 .toString()的区别

高洛峰
高洛峰original
2016-12-09 15:26:53973parcourir

我们知道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


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn