добавление массива объектов к существующим объектам - PullRequest
0 голосов
/ 24 октября 2019

У меня есть существующий объект params следующим образом

{
    "application_context": {
        "application_id": "a0",
        "context_id": "c0"
    },
    "device_data": {
        "device_id": "",
        "hostname": ""
    },
    "query_options": {
        "page_token": "",
        "page_size": 30
    }
}

Мой желаемый объект должен быть следующим

{
    "application_context": {
        "application_id": "a0",
        "context_id": "c0"
    },
    "device_data": {
        "device_id": "",
        "hostname": ""
    },
    "query_options": {
        "page_token": "",
        "page_size": 30,
        "filter_list": [{
            "operator": "OPERATOR_AND",
            "field_list": [{
                "field": "State",
                "value": "INACTIVE_STATE"
            }]
        }]
    }
}

Я создал следующее

param['filter_list'] = [{
            'operator': 'OPERATOR_AND',
             'field_list': filter
           }];

гдеон добавляет следующую часть с некоторой логикой

"field": "State",
"value": "INACTIVE_STATE" 

Но не может добавить выше, чтобы получить мой полный объект

Ответы [ 2 ]

1 голос
/ 24 октября 2019

Вы можете добавить свои данные как: obj ["query_options"] ["filter_list"] = param ["filter_list"];

var obj =  {
        "application_context": {
            "application_id": "a0",
            "context_id": "c0"
        },
        "device_data": {
            "device_id": "",
            "hostname": ""
        },
        "query_options": {
            "page_token": "",
            "page_size": 30
        }
    };
    
   var filter = [{
                    "field": "State",
                    "value": "INACTIVE_STATE"
                }];

   /*param['filter_list'] = */   
   var filter_list = [{
                "operator": "OPERATOR_AND",
                "field_list": filter
            }]
            
   obj["query_options"]["filter_list"] =  filter_list     ;
   
   console.log(obj);
1 голос
/ 24 октября 2019

Вам нужно создать filter_list на query_options ключ

let data = {
  "application_context": {
    "application_id": "a0",
    "context_id": "c0"
  },
  "device_data": {
    "device_id": "",
    "hostname": ""
  },
  "query_options": {
    "page_token": "",
    "page_size": 30
  }
}

data.query_options.filter_list = [{
  "operator": "OPERATOR_AND",
  "field_list": [{
    "field": "State",
    "value": "INACTIVE_STATE"
  }]
}];


console.log(data)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...