Node.js 12实战
上QQ阅读APP看书,第一时间看更新

3.5.1 属性的简洁表示

ES6允许直接写入变量和函数,作为对象的属性和方法,这时属性名是变量名,属性值是变量值:

var foo = 'bar';
var baz = {foo};
baz // {foo: "bar"}
// 等同于
var baz = {foo: foo};

例如:

function f(x, y) {
  return {x, y};
}
// 等同于
function f(x, y) {
  return {x: x, y: y};
}
f(1, 2) // Object {x: 1, y: 2}

除了属性简写外,方法也可以简写:

【示例3-17】变量属性使用示例:

var birth = '2000/01/01';
var Person = {
  name: '张三',
  //等同于birth: birth
  birth,
  // 等同于hello: function ()...
  hello() { console.log('我的名字是', this.name); }
};

这种写法用于函数的返回值,将会非常方便。

【示例3-18】如果某个方法的值是一个Generator函数,前面需要加上星号。