我知道这听起来像是一个荒谬、不必要的问题,但事实并非如此。
https://caniuse.com/?search=Hasownproperty显示 100% 的跟踪桌面客户端支持,正如您所期望的那样。但是切换到跟踪的移动客户端显示仅 95.4% 的支持率令人震惊,考虑到移动客户端甚至超过甚至超过桌面客户端,这意味着大约 2.5% 的当前访问网页的客户端不原生支持hasOwnProperty
。
鉴于包括 jQuery、Modernizr 和 Crockford 的 json2.js 在内的大量第三方库引用hasOwnProperty
并没有对其进行 polyfill,因此对其进行 polyfill 非常重要。
我正在寻找一种hasOwnProperty
根据规范进行填充的方法。它可以使用循环进行浅层填充(尽管不正确)for in
,但这不会返回false
继承的属性。