Javascript 将新对象添加到JS数组

Javascript 将新对象添加到JS数组,javascript,jquery,arrays,Javascript,Jquery,Arrays,我有一个关于将对象放入jquery数组的问题,我有这个代码 var currency_values = []; $("#bar_" + id).each(function () { currency_values.push({ currency: $(".currency").attr('id'), symbol: $(".symbol").attr('id') }); }); alert(currency_values[1].currency

我有一个关于将对象放入jquery数组的问题,我有这个代码

var currency_values = [];

$("#bar_" + id).each(function () {
    currency_values.push({
        currency: $(".currency").attr('id'),
        symbol: $(".symbol").attr('id')
    });
});

alert(currency_values[1].currency + " : " + currency_values[1].symbol);
它可以是一个n元素数组,这取决于id栏中有多少货币和符号成对出现


但看起来只有0个元素可用,添加新对象将覆盖最后一个元素。我被卡住了。

这是因为ID是唯一的,
$(“#bar"+ID)
只选择具有该ID的第一个元素,所以循环没有真正意义。您可能应该使用类?

这不是“jQuery数组”。它是纯JavaScript。在任何情况下,ID都必须是唯一的。如果有多个,则选择器只针对其中一个。我看不到使用
。each()
的原因,因为按id选择的元素只能返回一个结果,并且您没有在函数中使用与
#bar_id
相关的任何信息。。。只需完全跳过它,只处理
currency\u值。按(…)