преобразовывать определенные свойства объекта в массив объектов

В моем случае мне пришлось поставить галочку рядом с Expose daemon on tcp://localhost:2375 without TLS в настройке docker (в правой части панели задач щелкните правой кнопкой мыши по docker, выберите setting)

0
задан chŝdk 13 July 2018 в 12:02
поделиться

2 ответа

Вы можете использовать метод Object.values() , чтобы получить значения array, а затем отфильтровать только объекты из него с помощью метода Array#filter() .

Вот как должен выглядеть ваш код:

var result = Object.values(Data).filter(x => typeof x == 'object');

Демо:

Это рабочий демонстрационный фрагмент:

var Data = {
  aesthetic: {
    heritage: 'aesthetic',
    description: 'sdokjosk',
    value: 5
  },
  architectural: {
    heritage: 'architectural',
    description: 'doodsjdj',
    value: 1
  },
  historical: {
    heritage: 'historical',
    description: 'dcnsdlnckdjsncksdjbk kjdsbcjisdc hsdk chjsd cjhds ',
    value: 4
  },
  score: 3
};

var result = Object.values(Data).filter(x => typeof x == 'object');
console.log(result);

2
ответ дан chŝdk 17 August 2018 в 13:02
поделиться

Если вы хотите проверить все присутствующие вами ключи, вы можете пойти с этим:

Object.values(Data).filter(function(data){return data["heritage"] && data["description"] && data["value"]})
1
ответ дан AB Udhay 17 August 2018 в 13:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: