Показать сообщение отдельно
  #20 (permalink)  
Старый 08.12.2013, 22:34
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Сообщение от Maxmaxmaximus4
cyber, я вообще не понимаю чо делает твоя функция она должна возвращать массив индексов, а не массив значений.
возможно я не очень внимательно читал, но исправить ее не проблема.
Сообщение от Maxmaxmaximus4
это ты завязывай, если тебе говорят что ты хуйню делаешь значит прислушивайся, тем более если это говорю я, а не оскорбляй.
просто сникерсни.
Хотя насчет скорости я не уверен)
Array.prototype.compare = function(arr) {
    
    var search = arr.slice(),
        insert = [],
        remove = [];
    
    for(var i = 0, index; i < this.length; i++) {
        
        index = search.indexOf(this[i]);

		if(!~index) {
          
			remove.push(i);
            
            continue;
        }
        
        delete search[index];

	};
    
    search.forEach(function (elem, i) {
        if(elem)
          insert.push(i);     
    });
    
    return {
        remove: remove,
        insert: insert
    }
    
}

//console.log([1,2,3,4].compare([2,3,4,5, 34, 2 , 3434]));

console.log([1, 2, 3, 4, 5, 6, 7, 8, 9].compare([1, 2, 4, 5, 6, 7, 8, 9]));
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием