如何在一行中完成此操作:
var u = { code: 'foo' };
var a = [];
var o = {};
o[u.code] = 'bar';
a.push(o);
以下我认为有效的内容是无效的:
a.push({ u.code: 'bar' });
a.push({ u['code']: 'bar' });
我可能只是在放屁......
最佳答案
ES5 中您可以编写的最短代码是:
var u = { code: 'foo' }, a = [{}];
a[0][u.code] = 'bar';
一次computed properties浏览器支持(来自 ES6),您可以使用:
var u = { code: 'foo' }, a = [{[u.code]: 'bar'}];
现在您还可以使用 ES6 语法和 transpile到 ES5。
关于javascript - 将具有属性的对象推送到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24522563/