Показать сообщение отдельно
  #20 (permalink)  
Старый 31.12.2015, 01:10
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,080

callbackhell,
вариант решения ...
var arr = [];
function find(arr, obj) {
    return arr.every(function(el) {
        return el.a != obj.a || el.b != obj.b
    })
}
var obj = {a: 1, b: 1};
find(arr, obj) && arr.push(obj);
obj = {a: 2, b: 1};
find(arr, obj) && arr.push(obj);
obj = {a: 1, b: 1};
find(arr, obj) && arr.push(obj);
obj = {a: 1, b: 1};
find(arr, obj) && arr.push(obj);
obj = {a: 2, b: 2};
find(arr, obj) && arr.push(obj);
alert(JSON.stringify(arr));

причём тут прототипы не понимаю
Ответить с цитированием