Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Присвоить значение результату функции... (https://javascript.ru/forum/misc/2995-prisvoit-znachenie-rezultatu-funkcii.html)

Дроздов 07.03.2009 12:27

Присвоить значение результату функции...
 
Уважаемые знатоки! Вопрос к Вам.
Как-то уже попытался в сценарии присвоить значение функции сразу (без перерпределения переменной), нарвался на ошибку JS5003: Cannot assign to a function result. MSDN по этому поводу дает весьма чёткое разъяснение, оставил всякие попытки.
Но тут наткнулся на код, в котором люди за всю мазуту делают примерно такое:
function Form(Ahwnd){
 this.hwnd = Ahwnd?Ahwnd:func.HWND;
 this.object = new ActiveXObject('PosScr.IeUI');
 this.object.Init(this.hwnd);
 this.object.caption = 'Potolook'
 this.object.hash('hash') = glob;
}

Особо интересуют выражения типа:
this.object.hash('hash') = glob;

Вот как они такое делают?
Сам я разобраться не смог, но наверняка есть какой-то хитрый способ применения в сценарии таких конструкций.
Научите пожалуйста! Очень надо!
Спасибо!

Андрей Параничев 07.03.2009 20:59

Мне кажется, что в данном случае, это, каким-то образом, реализовано на стороне ActiveX компонента (т.е. возвращается setter, или что-то подобное). Потому что, как и говорит msdn, такое невозможно как на JavaScript, так и на JScript.

Дроздов 07.03.2009 21:42

Цитата:

Сообщение от Андрей Параничев (Сообщение 13844)
... это, каким-то образом, реализовано на стороне ActiveX

Совершенно верно, это и есть метод этого объекта 'PosScr.IeUI' и там он наверное вызван с флагом DISPATCH_PROPERTYPUT, или что-то вроде того. Но вот я и пытаюсь как-то такое же сделать доступными WSH средствами -- т.е. wsc или каким-то иным образом. НО! тут наверняка без COM сервера не получится.


Часовой пояс GMT +3, время: 08:41.