3

我正在阅读 Flanagan 的 Definitive JavaScript,他列出了该语言定义的所有 JavaScript 全局对象。

然而,其中 5 个(约 20 个)似乎与语言无关:

decodeURI
encodeURI
decodeURIComponent
encodeURIComponent
JSON

当 URI 和 JSON 更像是浏览器服务器时,为什么这些被认为是语言的一部分?

参考

decodeURI 和 decodeURIComponent 的区别

4

1 回答 1

4

和方法由 Microsoft 在 IE5.5(随后是 Netscape 6)中引入,后来包含在 ECMA-262 规范的修订版 3/1999 中encodeXXXdecodeXXXJSON 是后来引入的,现在所有主要浏览器都支持它,并且包含在 ECMA-262 规范的修订版 5/2011 中。

这些方法不是原始语言的一部分,也许它们不应该在全局命名空间中。就像AJAX,这些方法是由特定供应商引入的,后来被其他供应商采用,没有严格和正式的流程。这只是 JavaScript 美丑的一方面。

于 2012-09-02T18:14:07.927 回答