Functional JS
Higer order functions
by bhupendra negi
JavaScript
// collection
var cars = [{
name: "ecosport",
type: "mini-suv"
}, {
name: "i30",
type: "hatchback"
}, {
name: "polo",
type: "hatchback"
}, {
name: "vento",
type: "sedan"
}];
// filter
var newCars = cars.filter(function(car) {
return car.type === "hatchback"
});
// more simpler;
var isHatchback = function(car) {
return car.type === "hatchback"
};
//console.log(cars.filter(isHatchback));
// map
var mapCars = cars.map(function(car) {
return car.name + " is type of " + car.type;
})
console.log(mapCars);
// reduce
var orders = [{
amount: 20
}, {
amount: 40
}, {
amount: 60
}];
var sumOfOrders = orders.reduce(function(sum, order) {
return sum + order.amount
}, 0); // staring value
console.log(sumOfOrders)