Как динамически создать ключ объекта в JS? - PullRequest
0 голосов
/ 25 апреля 2020

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

main. js

const data = [
 {
  "ID":"Bellaire",
  "Name":"Bellaire", 
  "Address": "1st Ave"
 },
 {
  "ID":"Bellaire",
  "Name":"Bellaire",
  "Address": "1st Ave"
 },
 {
  "ID":"Champions Forest",
  "Name":"Champions Forest",
   "Address": "2nd Ave"
 }
 ]
function test(data,id){
 const filterData = data.filter(e => {
   if(e.ID === id) {
     return true;
   }
 });
const finalResponse = {
  filterData[0].ID: ["other Details"]
}
 return finalResponse;
}
console.log(test(data,"Bellaire"));

ожидаемый выход

[ { "Bellaire": ["other Details"] } ]

1 Ответ

1 голос
/ 25 апреля 2020

Так как filterData[0].ID возвращает строку и для того, чтобы установить ее в качестве ключа, вам просто нужно обернуть ее как [filterData[0].ID]:

const finalResponse = {
   [filterData[0].ID] : ["other Details"]
}

Демо:

const data = [{ID:"Bellaire",Name:"Bellaire",Address:"1st Ave"},{ID:"Bellaire",Name:"Bellaire",Address:"1st Ave"},{ID:"Champions Forest",Name:"Champions Forest",Address:"2nd Ave"}];

function test(data, id) {
  const filterData = data.filter(e => {
    return e.ID === id
  });
  const finalResponse = {
    [filterData[0].ID] : ["other Details"]
  }
  return finalResponse;
}
console.log(test(data, "Bellaire"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...