javascript - 将具有属性的对象推送到数组

标签 javascript

如何在一行中完成此操作:

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/

相关文章:

Javascript - 提交另一个文本输入时清除搜索输出

javascript - Datepicker CSS 改变日期的颜色

javascript - 删除标记谷歌地图API。为什么缩放时再次显示标记?

javascript - 将标题导航弹出菜单的悬停更改为单击

javascript - .keyCode 与 .which

javascript - 使用 br 选择器操作 html

javascript - 如何缓存光栅化图像

javascript - 从 HTML 元素(例如 onclick 处理程序)调用 RequireJs 模块中的方法

javascript - HTML 演示文稿幻灯片,调整元素大小以保持比例

javascript - 如何从selenium中的嵌套span标签获取文本