这三个新特性可能改变JavaScript未来


你想不想知道下一波令人兴奋无比的 JavaScript 特性?你甚至都不知道自己需要这些特性。现在,我要向你展示三个可能会改变你编写 JavaScript 代码方式的提案。

在开始之前,我要先做一个小小的免责声明:

所有这些特性都在开发和讨论当中。我的目的是为这些特性做一些宣传,并让人们知道 TC39 正在努力寻找共识、修复所有语法和语义,并让它们能够在下一版 ECMAScript 中发布。如果你有任何疑问、意见或想要提供支持,请访问 TC39 提案存储库(https://github.com/tc39/proposals ) ,为你支持的特性添加星标,提出你的疑问,并参与其中。

在开始介绍第一个提案之前,我想问一个简单的问题:

“this”是什么?

ECMAScript 中的 this 与很多其他编程语言中的 this 具有不同的语义,在其他编程语言中,this 通常指的是词法作用域。让我们通过一些小例子来说明这个问题:

全局作用域中的“this”

在这个例子中,this 的值是什么?
console.info(this);

在全局作用域内,this 指的是全局对象,如浏览器中的 window、Web Worker 的 self 和 NodeJS 中的 module.exports 对象。

 函数作用域中的“this”

在函数作用域中,this 的行为取决于函数的调用方式,因此预测它的值会很蹊跷。通过以下示例,我们可以更好地理解它:
<button id="button">

相关内容

    暂无相关文章