ASP Classic 使用什么版本的 JavaScript?
我看到的用于识别 JavaScript 版本的黑客攻击都是针对浏览器量身定制的,而不是针对运行 JavaScript 的 ASP Classic 服务器.
The hacks I've seen for identifying a JavaScript version are all tailored to the browser, not an ASP Classic server running JavaScript.
(不,我没有选择运行 ASP Classic/JavaScript.)
(And no, I'm not running ASP Classic/JavaScript by choice.)
推荐答案
免责声明:我是微软 JavaScript 团队(特别是 Chakra)的工程师.
Disclaimer: I'm an engineer on Microsoft's JavaScript team (specifically, Chakra).
经典 ASP"使用的 IActiveScript
JavaScript 引擎也被 Windows 脚本宿主(cscript
和 wscript
)使用,并且还被被 IE 使用了一段时间(IE9 及更高版本,当然不会).
The IActiveScript
JavaScript engine used by "Classic ASP" is also used by the Windows Script Host (cscript
and wscript
) and was also used by IE for a while (IE9 and later, certainly does not).
无论如何,JScript 引擎通常与 ECMAScript 3.0 规范一致,并带有一些专有扩展(例如 ActiveXObject
).该规范可在此处获得:http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%203rd%20edition,%20December%201999.pdf - 本规范写于 1999 年.
Anyway, the JScript engine generally coincides with the ECMAScript 3.0 specification with some proprietary extensions (such as ActiveXObject
). The specification is available here: http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%203rd%20edition,%20December%201999.pdf - this specification was written in 1999.
自 Windows 2000 以来,此版本的 JScript 没有太多更新(即没有添加新功能,唯一的更改是为了安全起见).
This version of JScript has not been updated much since the days of Windows 2000 (i.e. no new features have been added, the only changes have been for the benefit of security).
因此,它不包括 ECMAScript 5 中引入的功能,例如严格模式或 Array.isArray
.
As such, it does not include features introduced in ECMAScript 5, like strict mode, or Array.isArray
.
相关文章