Как перебрать массив со словарями по определенному столбцу (ключу), начиная и заканчивая определенным индексом?
Есть массив со словарями:
let array =
[
{ "Color": "Белый", "Count": 45, "Price": 243 },
{ "Color": "Оранжевый", "Count": 1, "Price": 653 },
{ "Color": "Красный", "Count": 67, "Price": 33 },
{ "Color": "Зелёный", "Count": 23, "Price": 457 },
{ "Color": "Синий", "Count": 12, "Price": 39 }
{ "Color": "Желтый", "Count": 50, "Price": 300 }
];
Необходимо получить все значения столбца 3 (ключ "Price"), у которых значения ключа "Count" больше 5 (>5). При этом нужно начать поиск со второй строки и закончить четвертой.
То есть по итогу должны отобраться значения 33 и 457.
Подскажите, как на JavaScript реализовать данное условие?
Ответы (1 шт):
Автор решения: Артём
→ Ссылка
Я разделил массив на часть с помощью метода .slice, после чего использовал .filter для фильтрации по количеству элементов (> 5) и вернул массив с ценой с помощью .map.
const array = [
{ 'color': 'Белый', 'count': 45, 'price': 243 },
{ 'color': 'Оранжевый', 'count': 1, 'price': 653 },
{ 'color': 'Красный', 'count': 67, 'price': 33 },
{ 'color': 'Зелёный', 'count': 23, 'price': 457 },
{ 'color': 'Синий', 'count': 12, 'price': 39 },
{ 'color': 'Желтый', 'count': 50, 'price': 300 }
];
console.log(array.slice(1, 4).filter(item => item.count > 5).map(item => item.price));