parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

JSHttpRequest.p и динамическая подгрузка javascript-кода

Sergey M. 12.10.2006 15:05

формат данных, который используется библиотекой при передаче ответа позволяет передавать клиенту не только поля объекта но и их методы. Проблема в том, как указать сериализатору (см. @_object2js[]) что мы передаем ему не строку, а код на javascript, и следовательно никаких кавычек и ^taint[js] ему делать не надо, иначе он просто не будет работать.

Как вариант решения мы можем создать простенький пользовательский класс "function", и все javascript-методы перед передачей оформлять как объекты этого класса. Ну и в @_object2js[] дописать что-то вроде
|| ($uVar is "function" && ^self._return[function(^uVar.arguments[]){^uVar.print[]}])
можно предлагать более элегантные варианты :)