jQuery将多个对象推送到数组

jQuery将多个对象推送到数组,jquery,arrays,object,Jquery,Arrays,Object,我正在努力实现的目标: 为每个国家/地区的“项目位置”创建一个数组,并以“项目位置”为键推送对象值 例如 [{USA:1},{USA:2}], [{UK:1},{UK:2}], [{CUBA:1},{CUBA:2}] [ { USA: {"Activity/Adventure": 1, "Beach Escape": 2}, UK: {"Activity/Adventure": 1, "Beach Escape": 2}, CUBA: {"Activity/Adventure

我正在努力实现的目标:
为每个国家/地区的“项目位置”创建一个数组,并以“项目位置”为键推送对象值

例如

[{USA:1},{USA:2}], [{UK:1},{UK:2}], [{CUBA:1},{CUBA:2}]
[
 {
  USA: {"Activity/Adventure": 1, "Beach Escape": 2}, 
  UK: {"Activity/Adventure": 1, "Beach Escape": 2}, 
  CUBA: {"Activity/Adventure": 1, "Beach Escape": 2}
 }
]

例如

[{USA:1},{USA:2}], [{UK:1},{UK:2}], [{CUBA:1},{CUBA:2}]
[
 {
  USA: {"Activity/Adventure": 1, "Beach Escape": 2}, 
  UK: {"Activity/Adventure": 1, "Beach Escape": 2}, 
  CUBA: {"Activity/Adventure": 1, "Beach Escape": 2}
 }
]


当前问题:
对象键显示“item\u location”,而不是选择“item\u location”变量值“item.location”

  var filter = [];
  for(var ix = 0; ix < jsonData.length; ix++)
    {
      var item = jsonData[ix];
      var item_location = item.Location;
      var item_ = [{item_location:item["Activity/Adventure"]},{item_location:item["Beach Escape"]}];
      filter.push({item_});
    }
  console.log(filter);
var过滤器=[];
对于(var ix=0;ix

ANWSER:

function filterData(){
  var filter = [];
  for(var ix = 0; ix < jsonData.length; ix++)
    {
      var item = jsonData[ix];
      var item_location = item.Location;
      var item1 = {}, item2= {};

      item1[item_location] = item["Activity/ Adventure"];
      item2[item_location] = item["Beach Escape"];
      var item_ = [item1, item2];

      filter.push(item_);
    }
  console.log(filter);
}
函数filterData(){
var过滤器=[];
对于(var ix=0;ix
键是
项目位置
,因为这是您设置的。不能将变量用作对象文字中的键名

您需要创建一个新对象,然后使用
obj[key]
语法添加键

var item_location = item.Location;
var item1 = {}, item2= {};

item1[item_location] = item["Activity/Adventure"];
item2[item_location] = item["Beach Escape"];
var item_ = [item1, item2];

filter.push(item_);

是一个数组还是多个数组,每个数组包含两个对象?那么
jsonData
对象包含什么呢?这里肯定回答了这个问题。但是一个快速的解决方案是:使用
item\u[item\u location]=item[“.”]
。。等等这里您将丢失:var item=jsonData[ix];但是,一旦添加了这个,它就完美地工作了!谢谢。@adamkwadsworth:不客气。我想我只是错过了复制和粘贴原始问题中的几行:-P