【问题标题】:JavaScript function with 'undefined' parameter [duplicate]带有“未定义”参数的 JavaScript 函数
【发布时间】:2011-06-06 17:34:22
【问题描述】:

浏览 Modernizr 源代码我发现了奇怪的事情:

window.Modernizr = (function(window,document,undefined) {

之后,将使用两个参数 (this, this.document) 调用此函数。

这里为什么使用undefined?它是有意义的还是只是奇怪的代码风格?

【问题讨论】:

  • 我知道这个构造在函数上下文中覆盖了 undefined,但我不明白是为了什么。

标签: javascript modernizr


【解决方案1】:

创建一个本地undefined,以防有人在作用域链中的某个地方重新定义undefined

还提供了更快的查找,因为undefined 是一个全局属性,因此减少了作用域链遍历。

【讨论】:

  • 哇,感谢您的快速回答。我不这么认为。
  • 是的,我相信 Paul Irish 将其称为我了解的有关 JQuery 视频的 10 件事中的混蛋效应。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-25
  • 1970-01-01
  • 2022-08-09
  • 2019-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多