今天在判断参数类型的时候发现
Object.prototype.toString.call(param)可以,
Object.toString.call(param)不可以。
报错信息为
Function.prototype.toString requires that 'this' be a Function。
但在控制台输出两个函数看起来应该是一样的。请问这是为什么?
今天在判断参数类型的时候发现
Object.prototype.toString.call(param)可以,
Object.toString.call(param)不可以。
报错信息为
Function.prototype.toString requires that 'this' be a Function。
但在控制台输出两个函数看起来应该是一样的。请问这是为什么?
8 回答4.7k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
Object构造函数
本身没有toString
方法。依照原型链关系,
Object构造函数
的上游原型链是Function.prototype
。所以,你调用
Object.toString.call(param)
本质上是调用Function.prototype.toString.call(param)
,这里需要的参数类型是函数
,你传了对象
,所以会报错。