javascript - 在 JavaScript 对象中定义函数的简写

标签 javascript

<分区>

我不小心写了如下代码,

var x = {hai:10,test(){ alert("I am alive")}};
x.test(); //alerting the value

它工作正常,我想知道这段代码是如何工作的?因为它以前被认为是无效的语法。我知道,在 ECMAscript 6 中,引入了一种用于分配属性的简写方式。

示例:

var x = 5, y = {x};  // is as same as var x=5,y={x:x};

但是我不确定函数定义。谁能用文档中的证据对此进行解释?

最佳答案

这是 ES2015 附带的功能。您可以跳过 method 定义的函数关键字(不适用于普通函数)。
所以 { doSth(){/*...*/} } 只是 { doSth: function(){/*...*/} } 的简写

引用:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Method_definitions

关于javascript - 在 JavaScript 对象中定义函数的简写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35622300/

相关文章:

JavaScript,如何以最有效的方式从字符串中获取第二个值,如 "var1-var2"

javascript - 如何使用angular js在html元素中绑定(bind)javascript和ng-click事件?

javascript - 如何在我的 Firefox OS 应用程序的服务器中加载远程内容 - 在 Web 和 FxOS 设备中

JavaScript 提交处理程序问题

javascript - 检查浏览器是否已完成页面加载

javascript - jQuery Mobile 滚动事件

javascript - html5输入类型范围始终指向最小值并且在文本输入上没有得到onChange

javascript - Bootstrap Toggle 不适用于具有有限元素的禁用启用

javascript - 为什么我的检查 float 的测试总是返回 false?

javascript - 附加时布局会移动,除非我使用警报