访问内部属性名称以计算 ES6 中的新属性
Access internal Property Name to Compute New Property in ES6
我有对象。我想添加属性,但我想在定义期间计算object
中所有属性的suffix
。
var myObject = {
foo: "bar",
[ "prop_" + "Access foo property: foo" ]: 42
};
以下是我的预期输出:
{
foo: "bar",
prop_bar: 42
}
不是我无法实现它。 我可以通过下面的代码片段实现,并且它工作正常,但我希望在声明期间完成此操作。
let myObject = {
foo: "bar"
};
myObject[ "prop_" + myObject['foo'] ] = 'hello'
审稿人注意:我已经审查了以下问题。
- ES6/ES7 中有简写吗?
- ES6 对象文本属性值速记
- 如何在节点/iojs 中使用 ES6 计算的属性名称?
- ES6 计算(动态)属性名称
我觉得会有比上述方法更好的解决方案,以下是我的问题。
对于这种情况,最佳方法是什么?
我们有多少种方法可以实现这一目标?
在声明期间不可能?
您可以创建工厂函数来执行此操作,例如:
const create = v => ({
foo: v,
["prop_" + v]: 42
});
let myObject = create("bar");
或内联:
let myObject = (v => ({
foo: v,
["prop_" + v]: 42
}))("bar");
相关文章:
- 创建新属性后的 JSON 空属性
- chart.js 2.0为数据集添加了新属性
- 当组件准备就绪时,如何在Polymer中动态注册新属性
- 为for循环中的对象添加新属性
- 复制第一个属性's值,然后使用第一个属性的值创建新属性
- 调用ko.applyBindings后,向Knockout视图模型添加新属性
- 如何向JSON数组添加新属性
- 在对象上迭代并添加新属性
- 在AngularJS中对指令的隔离作用域设置新属性
- 在knocket js中应用绑定后,向视图模型添加新属性
- 护照个人资料未通过新属性
- 如何在 CKEditor 表的单元格属性中添加新属性
- 无法向 Mongoose 查询返回的对象添加新属性
- 有没有办法让 Javascript 在将新属性添加到给定对象时抛出错误
- W3C 设置新属性
- 是否可以向现有 JSON 数据添加新属性
- 使用 contructor 参数将新属性添加到原型
- 如何为 html5 标签创建新属性
- 创建新属性 - JS / 边缘动画
- 和服:修改数据、分解字符串和添加新属性的功能