所以是的,对象中get() {}
和get: function() {}
声明之间是否存在差异,或者这完全是两件不同的事情?
实际上我不能让get: function() {}
工作,就像一个简单的方法,但也是一个吸气剂。
所以也许问题听起来像是:get: function() {}
是什么?
感谢。
UPD:http://take.ms/h6xII - 这就是我所说的。
答案 0 :(得分:2)
实际上没有,一个版本是新的shorthand in es6
var someObject = {
get() {
}
};
实际上与
几乎相同var someObject = {
get: function() {
}
};
它们都是方法定义,它只是新速记符号的一部分
<强>更新强>
在看到截图后我稍微更新了答案。 p
&amp;的getter / setter之间的差异s
是因为p
在s
中添加了// property getter/setter through object initializer
var p = {
_x: 5,
get x() {
return this._x;
},
set x(v) {
this._x = v;
}
};
// get/set function through defineProperty
var s = { _y: 10 };
Object.defineProperty( s, 'y', {
get() {
return this._y;
},
set(v) {
this._y = v;
}
});
p.x = 10;
s.y = 20;
console.log(p);
console.log(s);
,而在 find("img[src*='photo03.jpg']").click
中通过object initializer
方法添加了expect(page).to have_css("img[src*='photo03.jpg']")
。
我添加了一个小例子,它应该在控制台内部显示与您显示的屏幕截图类似的输出(如果你在chrome上运行它,在firefox上它看起来略有不同;)
UIFileSharingEnabled
答案 1 :(得分:0)
我假设您使用第一个示例作为函数get() {}
而第二个示例作为对象使用
var obj = {
get: function() {}
};
上述与
之间唯一的主要区别var obj = {
get() {}
};
第二个是es6中的简写,它们都是函数表达式。