我有一个对象数组,每个对象都有一些属性。我怎样才能从数组中的键和值一起返回所有对象中的一个属性?
现在我只得到值
这将返回一个对象数组:
var columnWidth = $('#grid').data('gridData').columns;
从每个对象返回一个名为width的属性的值数组:
columnWidth.map(function(e) {return e.width;});
现在回归的是:
[30, 50, 80, 80, 90, 125]
我想要的是:
["Width":30, "Width":50, "Width":80, "Width":80, "Width":90, "Width":125]
答案 0 :(得分:4)
然后返回那些对象:
columnWidth.map(function(e) {return { width: e.width }; } );
那会给你一个看起来像
的数组[ { width: 30 }, { width: 50 }, ... ]
(如果您希望将属性名称大写,请使用Width: e.width
。)
您问题中描述的格式没有意义;没有像这样的JavaScript数据结构,因为数组索引是数字的。如果您想要一个不同的结构,您可以使用.map()
或.reduce()
进行此操作。
此解决方案为您提供了一个对象数组,每个对象都有一个名为“width”的属性。这似乎是与您声明的目标最接近的近似值。