Tishaa
@Tishaa

Как фильтровать массив в массиве методом filter?

как сделать эту порнографию, нужно вывести тех с условием кто старше 25 и + true ещё
const users = [
  ["Alice", 25, true],
  ["Bob", 30, false],
  ["Charlie", 22, true],
  ["David", 27, true],
  ["Eve", 20, false]
];

let c = users.filter(function(item, index){
  return item[index] >= 25
})

console.log(c)
  • Вопрос задан
  • 101 просмотр
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Чтобы сделать эту порнографию, нужно прочитать первые 10 страниц любого учебника javascript.
- return item[index] >= 25
+ return item[1] >= 25 && item[2] === true
Ответ написан
VoidVolker
@VoidVolker Куратор тега JavaScript
Dark side eye. А у нас печеньки! А у вас?
Для начала вам нужно реализовать и понять сам алгоритм вашей задачи. Попробуйте расписать ручкой его на бумажке - что, как и в какой момент происходит. Реализуйте его в коде на простом цикле. Разберитесь в потоках управления и данных - что, куда и когда направляется. И вот уже с этим пониманием приступайте к реализации задачи с использованием требуемого метода и тогда у вас всё получится легко и просто.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
cdcdcd
@cdcdcd
Bug creator
const users = [
  ["Alice", 25, true],
  ["Bob", 30, false],
  ["Charlie", 22, true],
  ["David", 27, true],
  ["Eve", 20, false]
];

const filteredUsers = users.filter(([name, age, status]) => age > 25 && status);

console.log(filteredUsers);

[
  ["David", 27, true]
]


Что улучшено:
Деструктуризация: Использование деструктуризации ([name, age, status]) повышает читаемость и облегчает доступ к элементам вложенных массивов.
Стрелочная функция: Более лаконичная запись условия.
Корректное условие: Условие проверяет, что возраст больше 25 (age > 25) и status равен true.
Семантика: Переменная filteredUsers более точно отражает суть данных.

пробуйте различные варианты, как в книгах так и в связке с локальной машиной )
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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