首页 > web前端 > js教程 > 为什么 ES6 对象方法在没有'function”关键字的情况下也能工作?

为什么 ES6 对象方法在没有'function”关键字的情况下也能工作?

Susan Sarandon
发布: 2024-12-02 08:27:10
原创
295 人浏览过

Why Do ES6 Object Methods Work Without the

如果没有“function”关键字,这个对象方法定义如何工作?

概述

这个问题深入研究了一个有趣的代码片段,它定义了一个不使用“function”关键字的对象方法。理解这个语法需要深入研究 ES6 引入的定义方法的简写符号。

问题

为什么下面的代码片段在某些浏览器中可以工作,尽管省略了“function”关键字?

var module = {
    foobar(arg1) {
        alert(arg1);
    }
};

module.foobar("Hello World");
登录后复制

答案

答案就在ES6引入了简写用于定义对象方法的符号。根据 ECMAScript 2015 规范:

“对象的属性也可以引用函数或 getter 或 setter 方法。”
var o = {
  property: function ([parameters]) {},
  get property() {},
  set property(value) {},
};
登录后复制

ES6 引入了一种速记符号,删除了“function”关键字的必要性:

// Shorthand method names (ES6)
var o = {
  property([parameters]) {},
  get property() {},
  set property(value) {},
  * generator() {}
};
登录后复制

以上是为什么 ES6 对象方法在没有'function”关键字的情况下也能工作?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板