Geo*_*pty 18 javascript methods function shorthand ecmascript-6
我意外地忽略了function关键字而发现了这一点.通常foobar下面模块中的方法将被声明为foobar: function(arg1),但有趣的是以下工作,至少在某些浏览器中,例如Chrome版本44.0.2403.157 m,但它在IE 11.0.9600.17959中失败
在任何浏览器中都可以运行它怎么可能?这是某种新的ES6功能吗?
var module = {
foobar(arg1) {
alert(arg1);
}
};
module.foobar("Hello World");
Run Code Online (Sandbox Code Playgroud)
mea*_*gar 21
在任何浏览器中都可以运行它怎么可能?是某种新的ES6功能吗?
是的.
...
方法定义
对象的属性也可以指代函数或getter或setter方法.
Run Code Online (Sandbox Code Playgroud)var o = { property: function ([parameters]) {}, get property() {}, set property(value) {}, };在ECMAScript 6中,可以使用简写表示法,因此不再需要关键字"function".
Run Code Online (Sandbox Code Playgroud)// Shorthand method names (ES6) var o = { property([parameters]) {}, get property() {}, set property(value) {}, * generator() {} };...