Создание базового массива объектов JavaScript

0

Я не уверен, что это потому, что это поздно или что-то, но сегодня мне кажется, что у меня очень трудное время, думая, структурируя довольно простой массив объектов и строя его.

То, что я пытаюсь сделать, - собрать список идентификаторов текстового поля и поместить их в групповую переменную;

пример

groupA:{year, make, model}
groupB:{color,body}

Я не уверен, как структурировать мой основной объект группы. Я не уверен, что он должен использовать массив или нет. Ниже моя первая попытка

group = {groupA:{"year","make","model","trim"},groupB:{"body","color","transmission"}}

Я попытался создать свой групповой объект таким образом, но я действительно чувствую, что делаю все это неправильно.

  //Class variable
  Var group = {}

  //this method is called for every textfield
  selectGroup = function(spec) {
    //Group id is the group the field is assigned to, example groupA, or groupB
    var groupId = spec.groupId;

    //I'm checking to see if groupId exist in group object, otherwise I add it. 
    if (!group.hasOwnProperty(groupId)) {
        var obj = {};
        obj[groupId] = [];
        group = obj;
    }
    //spec.id is the field id, example make, model
    group[groupId].push(spec.id);
};

Если бы кто-нибудь мог помочь мне исправить это, я бы очень признателен. Заранее спасибо.

Теги:

2 ответа

2
Лучший ответ

Здесь вы ходите на скрипку

var group = {};

//this method is called for every textfield
selectGroup = function (spec) {
    //Group id is the group the field is assigned to, example groupA, or groupB
    var groupId = spec.groupId;

    //I'm checking to see if groupId exist in group object, otherwise I add it. 
    if (!group.hasOwnProperty(groupId)) {
        group[groupId] = [];
    }
    //spec.id is the field id, example make, model
    group[groupId].push(spec.id);
};
  • 0
    Отлично, спасибо, что нашли время собрать этот пример.
1

Предполагая, что вы хотите, чтобы результат был таким,

group = {groupA:["year","make","model","trim"] , groupB:["body","color","transmission"]},

Ты можешь сделать,

var group = {};

if (!group.hasOwnProperty(groupId)) {            
    group[groupId] = [];            
}        
group[groupId].push(spec.id);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню