Modernizr从以下开始:
window.Modernizr = (function(window,document,undefined) { ...
...但为什么窗口和文档已作为参数传递?它与浏览器之间的差异有关吗?或者仅仅是因为无法重新定义?
答案 0 :(得分:1)
调用该函数时的参数如下:(this, this.document)
因此,保证window
是全局对象,document
是文档对象,undefined
未定义。
它还可以带来小的性能提升;有关详细信息,请参阅Why does jQuery has a "window=this" at the very begining and say it would speed up references to window?
答案 1 :(得分:0)
我相信这是有效的。每次Modernizr需要它时都不需要获取window
和document
,而是它的缓存版本。