2012-05-23 3 views
4

Можно создать дубликат:
JavaScript function aliasing doesn't seem to work
Set document.getElementById to variableПочему нельзя установить псевдоним document.getElementById()?

код будет более эффективным, если бы это было возможно:

var min = document.getElementById; 

, а затем вызвать document.getElementById() с помощью min().

Не пытайтесь написать сокращенный код, но в этом конкретном случае можно уменьшить объем поиска и сократить некоторые строки.

Является ли это проблемой синтаксиса или ограниченностью языка?

+1

Можете ли вы использовать функцию делегата, такую ​​как 'var min = function (inID) {return window.document.getElementById (inID); }; '? – rt2800

+0

Да, это работает. –

+1

«Код был бы более эффективным»? – BoltClock

ответ

5

При вызове foo.bar() затем this установлен в foo внутри bar При копировании foo.bar в window.bar затем вызвать window.bar(), this устанавливается в window.

getElementById должен работать с объектом документа DOM.

+0

См. Пересмотренный вопрос. –

+0

'window' - объект по умолчанию, это тот же самый вопрос, который просто делает« окно »явным, а не ищет цепочку областей видимости. – Quentin

Смежные вопросы