Фильтрация объекта javascript - PullRequest
0 голосов
/ 14 февраля 2020

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

{
  "ACCOUNT": "Accountant",
  "ART": "Artist/Entertainer",
  "BIZ": "Business Owner",
  "CIVIL": "Civil Servant",
  "CLERK": "Clerk/Executive",
  "CONSULT": "Consultant",
  "EDU": "Educationist",
  "ENGINEER": "Engineer",
  "FACTORY": "Factory Worker",
  "FARMER": "Farmer",
  "FINANCE": "Finance Professional",
  "FREELANCER": "Freelancer",
  "GM": "General Manager/Director",
  "GWORKER": "General Worker",
  "HOUSEWIFE": "Housewife",
  "MANAGER": "Manager",
  "OTHERS": "Others",
  "POLICE": "Police/Army/Fireman",
  "PROF": "Professional",
  "RETIREE": "Retiree",
  "SALES": "Salesman/Marketer",
  "TECH": "Technician",
  "UNEMPLOY": "Unemployed"
}

Как я могу отфильтровать объект и вернуть obj, когда пользовательский тип указывает c символ. Например, когда пользователь вводит «A». Только возврат

  {
      "ACCOUNT": "Accountant",
      "ART": "Artist/Entertainer",
}

1 Ответ

1 голос
/ 14 февраля 2020

const List_X = 
  { ACCOUNT   : "Accountant"
  , ART       : "Artist/Entertainer"
  , BIZ       : "Business Owner"
  , CIVIL     : "Civil Servant"
  , CLERK     : "Clerk/Executive"
  , CONSULT   : "Consultant"
  , EDU       : "Educationist"
  , ENGINEER  : "Engineer"
  , FACTORY   : "Factory Worker"
  , FARMER    : "Farmer"
  , FINANCE   : "Finance Professional"
  , FREELANCER: "Freelancer"
  , GM        : "General Manager/Director"
  , GWORKER   : "General Worker"
  , HOUSEWIFE : "Housewife"
  , MANAGER   : "Manager"
  , OTHERS    : "Others"
  , POLICE    : "Police/Army/Fireman"
  , PROF      : "Professional"
  , RETIREE   : "Retiree"
  , SALES     : "Salesman/Marketer"
  , TECH      : "Technician"
  , UNEMPLOY  : "Unemployed"
  } 

let List_filter = Object
                    .keys(List_X)
                    .filter(k=>/^A/.test(k))
                    .reduce((a,c)=>{a[c]=List_X[c];return a},{})

console.log( List_filter )
.as-console-wrapper { max-height: 100% !important; top: 0; }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...