Показать сообщение отдельно
  #3 (permalink)  
Старый 11.03.2017, 23:12
Аспирант
Отправить личное сообщение для innowed Посмотреть профиль Найти все сообщения от innowed
 
Регистрация: 27.03.2015
Сообщений: 78

хм, что-то получилось))
let rawList = words.filter( i => i.word.toLowerCase().indexOf(value.toLowerCase()) == 0 );

var map = rawList.map(function(e, i) {
  return { index: i, value: e.word.toLowerCase() };
});

map.sort(function(a, b) {
	if(a.value.indexOf('.') != -1) return 1; //точка поднимает слово на самый верх
	return +(a.value > b.value) || +(a.value === b.value) - 1;
});

var result = map.map(function(e) {
  return rawList[e.index];
});

осталось добавить монитор
Ответить с цитированием