Comments 8
не хватает живого примера на любом из известных сервисов. А так спасибо за наводку.Поковыряем сейчас.
Пожалуйста, сразу была идея сделать пример для любого из сервисов, но позже решил, что это будет слишком сурово, т.к. владельцам ресурса это мягко сказать не понравиться. В статье содержится материал, отталкиваясь от которого можно во всём разобраться самому или по крайней мере понять с чего начать.
Не совсем понимаю, зачем приложению на .net нужен прикрученый интерпретатор jscript? Из .net можно прекрасно на лету скомпилировать исходние на c#/vbs/jscript, подключить полученую сборку и радоваться. Ещё и работать быстрее будет (работать, не запускаться!)
jscript != javascript, хотя большинство javascript кода будет без проблем работать в jscript. Про прекрасное вынужден не согласится, т.к. не всё так красиво как Вы описываете, касательно скоростных характеристик, то я не проводил таких экспериментов, хотя не думаю, что авторы двух библиотек изобретали велосипеды.
JScript и JavaScript — названия реализаций языка ECMAScript. Другое дело, что через codedom можно скомпилировать JScript.Net, а не JScript — это не должно вызывать проблем, потому что реализован один и тот же стандарт, просто с разными расширениями. С другой стороны захостить у себя обычный JScript (тот, который исполняется в IE), если проблемы все таки появятся — тоже никаких проблем.
Я с этим не спорю, я лишь сказал, что это не одно и тоже, не знаю как дела обстоят сейчас, но различия, хоть и незначительные есть. Вот например:
JScript is not Javascript
JavaScript and JScript: What's the Difference?
Вот тут можно посмотреть какие версии JavaScript и JScript поддерживают браузеры.
JScript is not Javascript
JavaScript and JScript: What's the Difference?
Вот тут можно посмотреть какие версии JavaScript и JScript поддерживают браузеры.
Портал inthecity.ru реализует технологию клиентского шаблонизирования, грубо говоря *.jsx вместо *.aspx и непосредственно в виртуальной машине браузера. Так вот когда встала задача генерировать выдачу для поисковых роботов, появилась необходимость в серверной интерпретации яваскрипта. Все имеющиеся на тот момент решения были слишком медленными, в связи с чем было принято решение заточить под это дело V8 из хром (тогда еще не существовало вменяемых решений вроде javascriptdotnet.codeplex.com/) и пришлось самостоятельно делать обертку на Managed C++. Работало очень быстро… Но проблемы начались с многопоточным доступом, так как архитектура хром в принципе этого не предусматривает, так как там каждая отдельная вкладка браузера — отдельный процесс. В итоге в V8 было большое количество статических переменных которые не позволяли использовать ее в многопоточном окружении, хотя в конференциях разработчиков и были подсказки в какую сторону нужно копать (ес-но в сторону локов) что бы сделать библиотеку потокобезопасной, но это было слишком трудоемко, в итоге пришлось переключится на древнюю версию Managed JScript (из DLR) от поддержки и развитии которой MS в последствии отказалось (хотя эта библиотека была на втором месте по производительности в наших тестах).
еще один продукт в продолжении темы: RemObjects Script for .NET
Sign up to leave a comment.
Выполнение javascript в программе на C#