今天在判断参数类型的时候发现
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。
但在控制台输出两个函数看起来应该是一样的。请问这是为什么?
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
Object构造函数
本身没有toString
方法。依照原型链关系,
Object构造函数
的上游原型链是Function.prototype
。所以,你调用
Object.toString.call(param)
本质上是调用Function.prototype.toString.call(param)
,这里需要的参数类型是函数
,你传了对象
,所以会报错。