在JavaScript中设置和获取布尔对象属性

时间:2015-07-06 19:07:05

标签: javascript syntax

所以我刚刚在一个协作软件项目(一个用Ember.js构建的web应用程序)上提交了我的第一个pull请求,我注意到我在一个对象文字中不小心包含了一个布尔变量(有条件地设置在一个函数内) 仅使用变量名称而不是键值对,如下所示:

function fruitStand () {
  // do something here to decide if this basket is pretty, and if not..
  var prettyBasket = false;

  var myObj = {
    apples : 1,
    oranges : 2,
    prettyBasket
  };

  return myObj;

}

我很惊讶稍后用

访问布尔值
var stand = fruitStand();
var truthy = stand.prettyBasket;

似乎有用,但这是有效的JavaScript吗?否则形式不好?如果上面的确定,那么使用类似prettyBasket : prettyBasket的设置感觉就更少了。

1 个答案:

答案 0 :(得分:4)

您无意中使用了ES6的一项功能,特别是速记对象文字符号,您可以阅读更多有关here的内容。

此外,根据您正在使用的应用程序是使用Ember-cli构建(并使用ES6转换器)还是构建常规Ember应用程序(可能没有转换),您应该认识到只有最新的浏览器将支持该代码,除非它被转换为标准的对象文字符号。