Сортировка rxjs

Нужна помощь, сейчас у меня сделана сортировка только по алфавиту, но можно ли в списке городов на первое место поставить Москву, потом Санкт-Петербург и потом только по алфавиту Stackblitz


Ответы (1 шт):

Автор решения: Alex
let array = ['Kyiv', 'Minsk', 'St.Petersburg', 'Tbilisi', 'Riga', 'Moskow', 'Yerevan', 'Kishinev'];
let sortArray = [];
array.sort((x, y) => {
  if (x < y) return -1;
  if (x > y) return 1;
  return 0;
});
array.forEach(el => {
  if (el.toLowerCase() === 'moskow' || el.toLowerCase() === 'st.petersburg') {
    sortArray.push(el);
    array.splice(array.indexOf(el), 1);
  }
});
sortArray.push(...array);
console.log(sortArray); // ["Moskow", "St.Petersburg", "Kishinev", "Kyiv", "Minsk", "Riga", "Tbilisi", "Yerevan"]
→ Ссылка