【问题标题】:Why can't one set an alias to document.getElementById()? [duplicate]为什么不能为 document.getElementById() 设置别名? [复制]
【发布时间】:2012-05-23 15:45:42
【问题描述】:

可能重复:
JavaScript function aliasing doesn't seem to work
Set document.getElementById to variable

如果可能的话,代码会更有效率:

var min = document.getElementById;

然后使用min().调用document.getElementById()

不尝试编写缩小代码,但在这种特殊情况下,可以减少范围查找并缩短一些行。

这是语法问题还是语言限制?

【问题讨论】:

  • 你可以使用像var min = function(inID){ return window.document.getElementById(inID); };这样的委托函数吗?
  • “代码会更有效率”?

标签: javascript


【解决方案1】:

当您调用 foo.bar() 时,this 会在 bar 内设置为 foo 当您将foo.bar 复制到window.bar 然后调用window.bar() 时,this 设置为window

getElementById 必须对 DOM 文档对象进行操作。

【讨论】:

  • window 是默认对象,同样的问题只是使 window 显式而不是查找范围链。
猜你喜欢
  • 2010-10-31
  • 2014-11-13
  • 1970-01-01
  • 2015-02-26
  • 2018-11-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多