实际上,如果您之前从未看到这种类型的代码,可能会对它留下深刻印象。使用 Proxy,您可以执行类型安全属性验证(编写一个处理函数来确保为给定属性设置的值具有正确类型);远程执行(返回一个知道如何通过 HTTP API 执行远程调用的代理,将参数序列化为 JSON 数组并去序列化结果);或者甚至引入授权边界(使用一个将在内存中检查给定用户凭证的代理,包装一个域对象)。从形式上讲,所有这些用法都属于面向方面编程的范畴。将它们相结合,就提供了如何捕获 JavaScript 中的关注点的全新思维方式。
结束语ECMAScript 6 是目前最大胆的 JavaScript 修订版,这不可避免地需要一个调整期。ECMAScript 解释器还没有完全达到规范要求。如果您的代码有时发生故障,不要奇怪;请检查您的解释器,看看不支持哪些功能并根据需要调整代码。
另请记住,如果您的代码无法运行,您的努力并未白费:您可以使用一个流行的 Node.js 将代码转换为不那么先进的 ECMAScript。
值得赞扬的是,尽管 ECMAScript 技术委员会推动着该语言向前发展,但仍支持大量的向后兼容性。由于这个原因,您可以循序渐进地采用 ECMAScript 6:挑选一个您喜欢的特性并集成到代码中。习惯使用该特性后,可以挑选另一个想要尝试的特性。您不需要涉入到您(或您的生产力)无法处理的深度,但您可以不断探索前进。渐渐地,您可以开始利用标准 JavaScript 中包含的许多强大的新特性和约定。 |