js filter object from array code example

Example 1: filtering json array in javascript

const data = [
  {
    name: 'Bob',
    gender: 'male',
    age: 34,
  },
  {
    name: 'Carol',
    gender: 'female',
    age: 36,
  },
  {
    name: 'Ted',
    gender: 'male',
    age: 38,
  },
  {
    name: 'Alice',
    gender: 'female',
    age: 40,
  },
];

const arr1 = data.filter(d => d.age > 37);
console.log('arr1', arr1);

const arr2 = data.filter(d => d.gender === 'female');
console.log('arr2', arr2);

const ageAndGender = d => d.age > 37 && d.gender === 'female';

const arr3 = data.filter(ageAndGender);
console.log('arr3', arr3);

Example 2: js filter object of objects

// Our data
const fruits = {
  apple: {
    qty: 300,
    color: "green",
    name: "apple",
    price: 2
  },
  banana: {
    qty: 130,
    color: "yellow",
    name: "banana",
    price: 3
  },
  orange: {
    qty: 120,
    color: "orange",
    name: "orange",
    price: 1.5
  },
  melon: {
    qty: 70,
    color: "yellow",
    name: "melon",
    price: 5
  }
};
// Now let"s create a map function
const map = (obj, fun) =>
  Object.entries(obj).reduce(
    (prev, [key, value]) => ({
      ...prev,
      [key]: fun(key, value)
    }),
    {}
  );
// Finally let's map by color for example
const myFruits = map(fruits, (_, fruit) => fruit.color);
/*
{ apple: 'green',
  banana: 'yellow',
  orange: 'orange',
  melon: 'yellow' }
/*