JS локально

Volodec

Client
Регистрация
17.10.2017
Сообщения
24
Реакции
4
Баллы
3
Приветствую! Возник вопрос по поводу не отработки JS, если исполнять его локально.
Есть простая функция подсчета символов в строке:
Код:
Развернуть Свернуть Копировать
var s = 'string';
return s.length;
Её результат ложится в переменную. Так вот это простое действие выдает ошибку:
Выполнение действия JavaScript OwnCode Адресат вызова создал исключение.
Да и вообще любой js-код какой я бы не писал, если исполнять его локально, то он выдает ошибку. Подскажите, может есть какой либо нюанс при локальном исполнении.
И да, т.к. js-код работает при выключенном браузере, то мне этот код остается только исполнять локально.
 
И да, т.к. 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, ну и конечно же изучить как она устроена ;)
4Ak3v1euMLo3gA.png
 
  • Спасибо
Реакции: Volodec и Dimionix
В дотнете есть встроенный эмулятор среды исполнения 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, ну и конечно же изучить как она устроена ;-)
4Ak3v1euMLo3gA.png
Спасибо за вариант реализации исполнения js локально. Но все же данный вариант требует знания C# и изучения GAC Microsoft.JScript. Методом научного тыка, как я пришел к тому, что стандартным кубиком JS при локальном исполнении не требуется возврат(return) и всю логику нужно писать одной непрерывной строкой.
Код:
Развернуть Свернуть Копировать
'string'.length;
Возможно все же есть вариант использования стандартного кубика js с локальным исполнением, чтобы писать более сложную логику, нежели одной строкой?
 
Спасибо за вариант реализации исполнения js локально.
Невачто. )))
Но все же данный вариант требует знания C# и изучения GAC Microsoft.JScript
Как бэ, выше предоставлен рабочи код который от вас особо не требует знаний ни каких )), просто вставил в C# кубик, если нужно заменил JS :)
 
рабочи код который от вас особо не требует знаний ни каких
Ок, подскажи еще как вместо строки подставить переменную, {-Variable.Variable0-} выдает ошибку выполнения. Я подозреваю, что там должно быть что-то вроде project.Variables["Variable0"].Value, но как происходит сложение строк в C# я не в курсе:bn:
 
В дотнете есть встроенный эмулятор среды исполнения 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, ну и конечно же изучить как она устроена ;-)
4Ak3v1euMLo3gA.png
источник картинки битый
 

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