Показать сообщение отдельно
  #1 (permalink)  
Старый 14.08.2015, 23:05
Аспирант
Отправить личное сообщение для Moloch Посмотреть профиль Найти все сообщения от Moloch
 
Регистрация: 29.10.2013
Сообщений: 94

отсортировать массив
Здравствуйте, подскажите пожалуйста как отсортировать такой вот массив
var arr = ["кокос", "абрикос", "банан", "персик" "апельсин1","апельсин2"]
так, чтобы все апельсины были сначала, а остальная жрачка отсортировалась по алфавиту после апельсинов. Нужно чтоб массив стал таким arr = ["апельсин1","апельсин2","абри ос","банан","кокос","персик"]. Я сделал так:
$(function(){
var arr=["апельсин1","апельсин2","абрикос","банан","кокос","персик"]
var result_arr=[];
arr.sort();
var nameLengths= arr.filter(function(name) {
if (name.indexOf("апельсин")+1) {
result_arr.push(name)
}
return name.indexOf("апельсин");
});

$('h1').html(result_arr.concat(nameLengths).join());
})


но я хочу отсортировать при помощи метода sort().
такой вот код вставляет все апельсины вначало, но не сортирует остальную жрачку по алфавиту
function compareElements(a,b){
      
       if ((a.indexOf("апельсин")+1)<(b.indexOf("апельсин")+1)) return 1;
       if ((a.indexOf("апельсин")+1)>(b.indexOf("апельсин")+1)) return -1;
    }
  arr.sort(compareElements);
Ответить с цитированием