Pages

Saturday, June 18, 2016

Coding challenge using Underscore functions

Take 4 arrays of 4 objects each, and return a new array with just "ages".  Then make sure that every age is over 21, if not, return false, is so, return true.


arrob1 = [{name : " Aaron " , age : 20}, {name : "Adam", age: 30} {name : "Bill", age : 40}, {name : "Bob", age : 30}];

arrob2 = [{name : " Charles " , age : 20}, {name : "Chad", age: 30} {name : "David", age : 40}, {name : "Donald", age : 30}];

arrob3 = [{name : " Evan " , age : 20}, {name : "Eugene", age: 30} {name : "Frank", age : 40}, {name : "Fred", age : 30}];

arrob4 = [{name : " Gerald " , age : 20}, {name : "Gene", age: 30} {name : "Harold", age : 40}, {name : "Henry", age : 30}];



 Solution is in the comments.

1 comment:

  1. Since I don't know how many arrays will be added, they are pulled from the arguments object.


    var ageTester = function(key,callback){
    var ageHolder = [];

    _.each(arguments, function(item){
    _.each(item, function(val){

    if(val[key] !== undefined){
    ageHolder.push(val[key]);
    }

    });
    });

    return !! _.reduce(ageHolder, function(a, b){
    return a && callback(b);
    },true);

    }

    ReplyDelete