【发布时间】:2018-09-24 17:02:42
【问题描述】:
在 ECMAScript 规范中引入了“领域”的概念:
在评估之前,所有 ECMAScript 代码都必须与领域相关联。从概念上讲,一个领域包括 一组内在对象、一个 ECMAScript 全局环境、所有加载的 ECMAScript 代码 在该全球环境以及其他相关状态和资源的范围内。
在 Rauschmayer 的“Speaking JavaScript”一书中,作者写到可以跨领域的对象:
在网络浏览器中,每个框架和窗口都有自己的领域,并带有单独的全局变量。这可以防止 instanceof 为跨领域的对象工作。
究竟什么是“领域”?除了框架还有什么可以将网站代码分离到另一个领域,后果是什么?
【问题讨论】:
-
您是否遇到了一些特殊问题,或者您只是想理解这个概念?
-
我试图理解这个概念。我在不同的关于 JS 的书籍中找到了对领域的引用,但从未对这个主题进行过任何详细的描述。
-
除了窗口间函数调用,这取决于你的前端架构可能是也可能不是你必须担心的事情,“领域”的概念真的不是作为一个基本概念。领域是像
Object和Array这样的全球标准构造函数“生存”的地方。 -
@Pointy 我认为更重要的是声明每个领域都有自己的“全局”范围:-)
标签: javascript ecmascript-6 ecmascript-5