你为什么要使用string.toString()?

时间:2016-06-21 18:01:16

标签: javascript

我试图理解为什么你会在字符串上使用toString()。

tutorialspoint.com给出了这个example

fragShaderData

为什么不使用

<html>
  <head>
    <title>JavaScript String toString() Method</title>
  </head>

  <body>

    <script type="text/javascript">
      var str = "Apples are round, and Apples are Juicy.";
      document.write(str.toString( ));
    </script>

  </body>
</html>

4 个答案:

答案 0 :(得分:3)

toString()方法在调用&#34;纯&#34;时没有任何实际意义。像"Apples are round, and Apples are Juicy."一样。当你需要得到一些非字符串值的字符串表示时,它可能很有用。

// Example:
var x = new String(1000);   // converting number into a String object

console.log(typeof x);             // object
console.log(typeof x.toString());  // string
console.log(x.toString());         // "1000"
  

String 对象会覆盖对象 toString()方法   宾语;它不会继承 Object.prototype.toString()。对于String   对象, toString()方法返回一个字符串表示形式   object,与 String.prototype.valueOf()方法相同。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/toString

答案 1 :(得分:2)

即使您不使用toString函数,也会调用它(隐式)来获取用于document.write()函数的值。

答案 2 :(得分:0)

没有区别。我认为他们使用toString函数只是为了强调它存在。 javascript中的每个对象都有一个toString函数,因为它是在Object的原型上定义的,就像解释here一样。

区别在于String类型会覆盖原始toString函数,否则结果将为“[object String]”。

答案 3 :(得分:0)

string.toString()很有用,如果您不确定是否可以获得数字或字符串,并且如果您确实需要字符串来进行其他计算,例如字符串函数,例如.includes.split