Лучший способ пользовательской сортировки гибкого массива? - PullRequest
0 голосов
/ 11 мая 2011

Вот строки, которые этот массив может содержать (в правильном порядке):

«получатели», «columnSelector», «headerImageLink», «title», «mainText», «text», «bodyImage»

Теперь, чтобы отсортировать их, я, очевидно, не хочу делать что-то вроде этого:

if( a == 'columnSelector' && b == 'headerImageLink' ) return -1;
else if( a == 'columnSelector' && b == 'title' ) return -1;
else if( a == 'columnSelector' && b == 'mainText' ) return -1;

Так что это поднимает интересную вещь. Я знаю, что некоторые из них можно оптимизировать, используя что-то вроде этого:

if( a == 'columnSelector' || a == 'bodyImage' ) return -1;

Это получит последние два, но в последнее время я просто хотел получить информацию от сообщества по вопросам, которые у меня были в прошлом. Поэтому вопрос в том, как лучше написать собственную сортировку, используя относительно случайный порядок (не по алфавиту и т. Д.)?

Спасибо!

1 Ответ

3 голосов
/ 11 мая 2011

Почему бы вам не использовать Array.sort с функцией сравнения, которая определяет ваш собственный алгоритм?

...