您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

JavaScript对象文字:{a,b,c}到底是什么?

JavaScript对象文字:{a,b,c}到底是什么?

它是ES6中的Object Initializer 属性简写。

var f = {a, b, c, d:1}; // Will be equal to {a:a, b:b, c:c, d:1}

这是可行的,因为属性值与属性标识符具有相同的名称。这是最新ECMAScript6草案Rev13中对象初始化程序第11.1.5节]的语法的新补充。当然,就像ECMAScript3中设置的限制一样,您不能使用保留字作为属性名称

这样的简写不会显着改变您的代码,只会使所有内容变得更甜蜜!

function createCar(name, brand, speed) {
  return { type: 'Car', name: name, brand: brand, speed: speed };
}

// With the new shorthand form
function createSweetCar(name, brand, speed) {
  return { type: 'Car', name, brand, speed }; // Yes it looks sweet.
}

请参阅兼容性表以获取对这些符号的支持。在不支持的环境中,这些符号将导致语法错误

在 ,我们曾经做过的事情:

var tmp = getData();
var op  = tmp.op;
var lhs = tmp.lhs;
var rhs = tmp.rhs;

只需一行代码即可在 中完成:

var { op, lhs, rhs } = getData();
javascript 2022/1/1 18:19:28 有344人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶