在.NET桌面和浏览器之间共享JavaScript代码

我有一组核心,复杂的
JavaScript数据结构/类,我希望能够在浏览器中使用JavaScript作为JavaScript并在桌面上使用.NET 3.5运行.是否有可能将Web友好的JavaScript编译成我的C#代码可以访问的程序集?

>托管JScript – 是否有可用的编译器可以生成可以在桌面CLR上运行的东西?我只看过Silverlight运行时的已发布示例.它听起来并不像桌面上正式可用,但我愿意尝试一些不那么幸运的东西,比如我可以使用Silverlight工具进行编译然后在桌面CLR上运行吗?
> JScript .NET – 听起来它有足够的自定义语言扩展,在浏览器中运行相同的代码会非常困难,但也许有办法……?

如果这些都不起作用,我想我的选择是:

>有一个C#版本和一个JavaScript版本,我必须保持同步(哎呀).
>编写一个在编译时运行的各种预处理器,将我的JavaScript转换为JScript .NET或者我可以编译成.NET程序集的东西.
>脚本#:看起来这会将C#代码变成JavaScript代码.因为我更喜欢能够直接大量调整JavaScript代码,所以不太棒,但它可以工作.

任何人都可以成功使用这些选项吗?

最佳答案 JScript.Net实际上主要是EMCAScript3兼容的.只要您将代码视为处理库(只进行处理,等等 – 使用回调来与程序进行交互),您应该没问题.

我正在做类似的事情,使用javascript作为我的核心解析库,然后在python,dotnet和php中使用它.

点赞