рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рдореЗрдВ рдирд╣реАрдВ рджреЗрдЦрд╛ рдерд╛ рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рд╡рд╣рд╛рдВ рдлреЗрдВрдХрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
рдореБрдЭреЗ рдпрд╣ рддрдм рдЙрдкрдпреЛрдЧреА рд▓рдЧрд╛ рдЬрдм рдореИрдВ рдХрд┐рд╕реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреА рдЧрдИ, рдкрд╕рдВрдж рдХреА рдЧрдИ рдпрд╛ рдЙрдирдХреЗ рдорд┐рддреНрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдкрд╕рдВрдж рдХреА рдЧрдИ рдкреБрд╕реНрддрдХреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдиреБрд╢рдВрд╕рд┐рдд рдкреБрд╕реНрддрдХреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдиреЗ рдЬреИрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реВрдВред рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рдЕрдиреБрд╢рдВрд╕рд╛рдУрдВ рдХреА рдПрдХ рдЕрдиреВрдареА рд╕реВрдЪреА рджрд┐рдЦрд╛рдПрдВред
function distinct(items, prop) {
var unique = [];
var distinctItems = [];
_.each(items, function(item) {
if (unique[item[prop]] === undefined) {
distinctItems.push(item);
}
unique[item[prop]] = 0;
});
return distinctItems;
}
// likedBooks + viewedBooks + friendLikedBooks + friendViewedBooks
var books = [
{ name: 'Holes', id: 1 },
{ name: 'Treasure Island', id: 2 },
{ name: 'Holes', id: 2 }
];
var uniqueBooks = distinct(books, 'id');
console.log(uniqueBooks);
/**
var uniqueBooks = [
{ name: 'Holes', id: 1 },
{ name: 'Treasure Island', id: 2 }
];
*/
рдореБрдЭреЗ рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рдкреАрдЖрд░ рдХреЗ рд╕рд╛рде рдЖрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рд▓реЛрдЧ рдкрд╣рд▓реЗ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВред
рдЖрдк рдЗрд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд╕рд╛рде рдкреВрд░рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдк рд╕рдВрдкрддреНрддрд┐ рдирд╛рдо рд╢реЙрд░реНрдЯрд╣реИрдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
_.uniq(books, function(book) { return book.id; })
Ty @braddunbar рдиреЗ рдирд╣реАрдВ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдореИрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рд╕реЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рд╡рд╣рд╛рдБ рдПрдХ рджреВрд╕рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ред
http://underscorejs.org/#uniq
рдирдИ _.property
рд╡рд┐рдзрд┐ рдЗрд╕ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЖрдк рдЗрд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд╕рд╛рде рдкреВрд░рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдк рд╕рдВрдкрддреНрддрд┐ рдирд╛рдо рд╢реЙрд░реНрдЯрд╣реИрдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред