@lsmn
2015-05-30T16:59:27.000000Z
字数 1061
阅读 2782
微软
Windows
Chakra
JavaScript
微软在Windows 10中扩展了其Chakra JavaScript引擎的用途,使开发者能够在他们的应用程序中使用它支持脚本编程。JsRT先前侧重于服务器端功能,但新的API适合各种应用程序使用JavaScript。
微软在Windows 10中扩展了其Chakra JavaScript引擎的用途,使开发者能够在他们的应用程序中使用新的API。名为JavaScript Runtime(JsRT)的API最初出现在Windows 8.1中,但侧重于服务器端功能。在Windows 10中,这些API将不限于服务器端项目,而是可以用于传统的Win32应用程序或通用Windows应用程序。
这些API提供了一些额外的自定义选项。对于长时间运行或经常使用的程序,开发者可以利用JsSerializeScript在代码执行前将其序列化。这样,就可以在需要的时候缓存代码,提升启动速度。
鉴于在应用程序中包含JavaScript引擎这种设计使用户可以插入自己的代码,应用程序开发者需要有办法限制这些脚本消耗的资源,防止流氓脚本导致性能问题。JSRT API提供了限制这些脚本所使用的内存和CPU的功能。
由于微软计划继续更新他们的新Web浏览器Edge,所以他们需要一种方式,更新与之关联的Chakra JavaScript引擎,而又不破坏可能依赖于旧特性的遗留应用程序。Chakra通过分成两个版本达成了这一目的。当前(遗留)的Chakra引擎包含在jscript9.dll中, 而新的Chakra引擎(在Windows 10中提供)将包含在chakra.dll中。开发者可以根据需要选择指向哪个DLL。运行Internet Explorer 11的机器可以使用指向jscript9.dll的应用程序,这为尚未迁移到Windows 10的应用程序提供了一个单独的选项。
微软总结了如下两条标准,用于指导开发者做出选用哪个库的决定:
- 如果重点是向后兼容现有应用程序,则指向遗留引擎。
- 如果希望应用程序具有前瞻性,并在JavaScript新特性发布时支持它们(比如,ECMAScript 6),则指向Edge引擎。
除了支持ECMAScript 6之外,指向最新的DLL还可以简化在Visual Studio中的代码调试工作。要试用新的Chakra引擎及Windows 10,请访问微软Windows 10开发工具页。GitHub上提供了一些初始示例。