Object.prototype.toString.call("abc")和"abc".toString()的值不一样

Posted liangzi4000

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Object.prototype.toString.call("abc")和"abc".toString()的值不一样相关的知识,希望对你有一定的参考价值。

Object.prototype.toString.call("abc")返回[object String], 因为这个toString方法并不知道传入参数的类型,所以会返回一个通用的结果,即传入参数的类型。

"abc".toString()返回abc,"abc"已经是String类型了,String.prototype.toString覆盖了默认的Object.prototype.toString方法,返回的是字符串内容。

类似的还有:

Array.prototype.toString,它返回的是用逗号分开的数组元素字符串,

Number.prototype.toString(radix), 返回A string representing the specified Number object.

 

以上是关于Object.prototype.toString.call("abc")和"abc".toString()的值不一样的主要内容,如果未能解决你的问题,请参考以下文章

Object.prototype.toString.call()方法

Object----Object.prototype.toString.call()方法的使用

Object.prototype.valueOf()和Object.prototype.toString()

Object.prototype.toString.call()方法

js变量类型判断 严格通用 Object.prototype.toString.call()

从toString()方法到Object.prototype.toString.call()方法