JS локально

Volodec

Client
Регистрация
17.10.2017
Сообщения
24
Благодарностей
4
Баллы
3
Приветствую! Возник вопрос по поводу не отработки JS, если исполнять его локально.
Есть простая функция подсчета символов в строке:
Код:
var s = 'string';
return s.length;
Её результат ложится в переменную. Так вот это простое действие выдает ошибку:
Выполнение действия JavaScript OwnCode Адресат вызова создал исключение.
Да и вообще любой js-код какой я бы не писал, если исполнять его локально, то он выдает ошибку. Подскажите, может есть какой либо нюанс при локальном исполнении.
И да, т.к. js-код работает при выключенном браузере, то мне этот код остается только исполнять локально.
 

ZHAG

Client
Регистрация
01.05.2014
Сообщения
228
Благодарностей
220
Баллы
43
И да, т.к. js-код работает при выключенном браузере, то мне этот код остается только исполнять локально.
В дотнете есть встроенный эмулятор среды исполнения JS
C#:
string s = Microsoft.JScript.Eval.JScriptEvaluate("function t(){var s = 'string';  return s.length;} var tt = t();",    Microsoft.JScript.Vsa.VsaEngine.CreateEngine()).ToString();
return s;
Этот код будет исполнятся вне браузера! т.е. ЛОКАЛЬНО :-)
Чтобы заработало нужно добавить ссылку GAC Microsoft.JScript, ну и конечно же изучить как она устроена ;-)
 
  • Спасибо
Реакции: Volodec и Dimionix

Volodec

Client
Регистрация
17.10.2017
Сообщения
24
Благодарностей
4
Баллы
3
В дотнете есть встроенный эмулятор среды исполнения JS
C#:
string s = Microsoft.JScript.Eval.JScriptEvaluate("function t(){var s = 'string';  return s.length;} var tt = t();",    Microsoft.JScript.Vsa.VsaEngine.CreateEngine()).ToString();
return s;
Этот код будет исполнятся вне браузера! т.е. ЛОКАЛЬНО :-)
Чтобы заработало нужно добавить ссылку GAC Microsoft.JScript, ну и конечно же изучить как она устроена ;-)
Спасибо за вариант реализации исполнения js локально. Но все же данный вариант требует знания C# и изучения GAC Microsoft.JScript. Методом научного тыка, как я пришел к тому, что стандартным кубиком JS при локальном исполнении не требуется возврат(return) и всю логику нужно писать одной непрерывной строкой.
Код:
'string'.length;
Возможно все же есть вариант использования стандартного кубика js с локальным исполнением, чтобы писать более сложную логику, нежели одной строкой?
 

ZHAG

Client
Регистрация
01.05.2014
Сообщения
228
Благодарностей
220
Баллы
43
Спасибо за вариант реализации исполнения js локально.
Невачто. )))
Но все же данный вариант требует знания C# и изучения GAC Microsoft.JScript
Как бэ, выше предоставлен рабочи код который от вас особо не требует знаний ни каких )), просто вставил в C# кубик, если нужно заменил JS :-)
 

Volodec

Client
Регистрация
17.10.2017
Сообщения
24
Благодарностей
4
Баллы
3
рабочи код который от вас особо не требует знаний ни каких
Ок, подскажи еще как вместо строки подставить переменную, {-Variable.Variable0-} выдает ошибку выполнения. Я подозреваю, что там должно быть что-то вроде project.Variables["Variable0"].Value, но как происходит сложение строк в C# я не в курсе:bn:
 

ZHAG

Client
Регистрация
01.05.2014
Сообщения
228
Благодарностей
220
Баллы
43

bizzon

Client
Регистрация
08.09.2015
Сообщения
1 101
Благодарностей
132
Баллы
63
В дотнете есть встроенный эмулятор среды исполнения JS
C#:
string s = Microsoft.JScript.Eval.JScriptEvaluate("function t(){var s = 'string';  return s.length;} var tt = t();",    Microsoft.JScript.Vsa.VsaEngine.CreateEngine()).ToString();
return s;
Этот код будет исполнятся вне браузера! т.е. ЛОКАЛЬНО :-)
Чтобы заработало нужно добавить ссылку GAC Microsoft.JScript, ну и конечно же изучить как она устроена ;-)
источник картинки битый
 

Кто просматривает тему: (Всего: 4, Пользователи: 0, Гости: 4)