JSFiddle - React, Tailwind, and code Playground

by John Wick

HTML

<script src="http://underscorejs.org/underscore-min.js"></script>

JavaScript

var myArray = [
    {name:"Bob",b:"text2",c:true},
    {name:"Tom",b:"text2",c:true},
    {name:"Adam",b:"text2",c:true},
    {name:"tom",b:"text2",c:true},
    {name:"Bob",b:"text2",c:true}
];
console.log('original myArray');
console.dir(myArray);

console.log('mySubArray using property');
console.dir(
    _.uniq(myArray, _.property('name'))
);
console.log('mySubArray using uniq');
console.dir(
    _.uniq(myArray, 'name')
);

function toLower(s) {
    if (typeof(s) === 'string') {
        return s.toLowerCase();
    }
    return s;
}

mySubArray = [];
_.each(_.uniq(_.pluck(myArray, 'name'), toLower), function(name) {
    mySubArray.push(_.findWhere(myArray, {name: name}));
})

console.log('mySubArray uniq');
console.dir(mySubArray);