Difference between JScript, JScript.NET and Managed JScript
当前MS提供给用户三种不同的JScript Engine,在这篇文章中我们将讨论他们之间的不同,和他们不同的动机.
JScript(或native JScript)
对他们的介绍可以先读我的blog上之前的
文章,native JScript engine 主要依靠的是Microsoft的ActiveX/COM提供更多的功能.核心engine(jscript.dll)被安装在用户的机器上的Windows/IE Component和路径在“% SystemRoot%\system32”.
JScript.NET
JScript.NET是按照Microsoft的ECMA262 实现的下代语言.混合JScript之前的版本的特性而且不比任何基于类的语言差,JScript与.NET达到两全齐美,JScript.NET engine 依赖.NET Framework为JScript.NET提供更多功能并且余兴在Common Language Runtime之上.
JScript .NET 与JScript比较不同是JScript .NET是编译代码(它是将MSIL转换为CLR),支持定义类型and 类型变量, 前,后其绑定, 类 (with 继承, 重载函数, property accessors, 很更多), 包,跨语言和完全访问.NET Framework.
JScript .NET的核心engine是在.NET Framework中的一部分,Microsoft.JScript.dll被安装在“% SystemRoot%\Microsoft.NET\Framework\vX.XXXXX”.这里的X.XXXXX 是指.NET Framework的版本.还有语言会随时参照于.NET Framework 安装的版本如1.0/1.1/2.0.还有语言的版本会与Visual Studio的主要版本相对应,像8.0版本对应的就是Visual studio2005,.NET Framework 2.0.所以JScript.NET-2.0 and JScript.NET-8.0其实提到的是同一个版本.
Managed JScript
Managed JScript,它在Dynamic Language Runtime之上实现ECMA-262语言之后呈现Silverlight.它最终被增加到JScript家族并在MIX07上发布.
不像JScript.NET比起JScript缺少动态性当提供CLS兼容,Managed JScript被设计在DLR之上并且提供Scripting场景所需的特性.实现DLR允许Managed JScript代码不只能和C#代码一起协同工作而且还能和 IronPython , IronRuby, VB和其他语言.Managed JScript engine被安装在Silverlight 1.1下的“%ProgramFiles%\Microsoft Silverlight\Microsoft.JScript.Runtime.dll”.
Managed JScript 代码的正式发布计划在 Microsoft Silverlight 1.1和下版ASP.NET中,你能在正式的Silverlight的website得到更多信息.
转载于:https://www.cnblogs.com/worksguo/articles/1078649.html