关于 jQuery 源码中的 isPlainObject 函数判定对象是否为纯对象的问题

// Objects with prototype are plain iff they were constructed by a global Object function

Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; //这行是什么意思?

return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString;

以下是上诉代码中提到的代码

https://img1.mukewang.com/5c19f20c0001c78103570137.jpg

jQuery 3.2.1 中,判定对象是否为纯对象的函数,最后两行,我自己测试的时候是不对等的,想问下问题在哪里

https://img.mukewang.com/5c19f2160001b77c05560120.jpg

问下

  1. 为什么输出结果是 false

  2. Object.hasOwnProperty.call(proto, "constructor") && proto.constructor; 是什么意思

  3. Object.hasOwnProperty.toString.call( Object ) 输出为function Object() { [native code] }
    Object.hasOwnProperty.toString.call( Number )输出为function Number() { [native code] }是为什么


至尊宝的传说
浏览 500回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript