Windows 10年度更新将为Edge带来JavaScript性能提升
2016-06-23 Windows Blog 编辑:佚名
微软于今日宣布了Edge浏览器Chakra JavaScript引擎的一些改进,它们将于下月随着Windows 10年度更新一同到来。该公司称,Chakra引擎旨在“打造在现实Web世界中更快的JavaScript、不断提升Microsoft Edge浏览器的体验”。今日提到的改进之一,是内存优化功能。微软表示web脚本中有大量小型的功能,这对区分代码重用性的开发者们来说相当常见。
微软通过重构每个功能的元数据格式而解决了这个问题,举例说,指向被很少使用的功能的指针,将被迁移至一个动态的辅助结构。
据微软所述,大多数32位计数器几乎很少提供超过256的数值。有鉴于此,大多数值都可只使用1个字节。(1字节=8比特,二进制的11111111等同于十进制的255)
其次,微软还推迟了解析事件的处理程序。当你前往一个网站的时候,几乎你无论做什么都会触发一个事件。比如点击了一个按钮、文本框输入、划过一个链接等,都会触发JavaScript代码中的一个事件,告诉该网站该提供怎样的反馈。
通常情况下,一个浏览器可在加载页面时解析所有这些事件处理程序,但它们中有很多根本不会被用到,结果就是白白浪费资源。而在Windows 10年度更新中,Edge浏览器将能够只实时解析在用的那部分。
上图为在64位Windows 10 Insider Preview系统和64位浏览器上的测试比对结果,所使用的机器为戴尔Optiplex 7010,四核@2.9GHz的英特尔酷睿i5-3475S CPU + 4GB RAM。
有趣的是,微软在较老的硬件上测试了新功能(英特尔第三代Ivy Bridge CPU,当前最新的是第六代的Skylake)。
今年1月份的时候,微软开源了其Chakra JavaScript引擎,感兴趣的网友可以移步至GitHub上的ChakraCore项目介绍页。