Я использую объекты для namespace моего кода JavaScript. Эти объекты обычно содержат функции, которые называются сопоставлением this
-pointer с самим объектом с помощью apply
. Однако я считаю неудобным использовать this
-pointer каждый раз, когда хочу получить доступ к другим функциям или свойствам объекта, особенно потому, что во многих случаях я использую new
-оператор для использования объектов-функций так, как вы использовать классы. Я бы предпочел написать new Line()
вместо new this.Line()
.
Было бы здорово, если бы вы могли добавить локальные переменные в функцию, как это делает php с extract
(после псевдокода это немного сложнее)
var sample_object = {
"some_function": function() {}
}
test() {
extract(sample_object);
some_function(); // imported from sample_object
}
Возможно ли это?