У меня есть массив с некоторыми результатами поиска, которые должны отображаться в jQuery datatable. Мне нужно отсортировать строки, которые я получил на основе поискового запроса. Я имею в виду, что наиболее подходящие строки с поисковым термином должны быть в верхней части результатов поиска. Например, если мой поисковый запрос «Hello World», мои данные следующие.JQuery Сортировка массива JSON по релевантности на основе поискового запроса
Hello 560 World
Hello Business World Guy
World of Hello
Hello World
100 Hello World's
World Hello Business
После сортировки, мне нужно, чтобы отсортировать массив как
Hello World
100 Hello World's
Hello 560 World
Hello Business World Guy
World of Hello
World Hello Business
есть ли функция JavaScript/JQuery, чтобы сделать это? Мне просто нужно получить перестроенный массив с самыми совпадающими строками в начале.
Даже если вы получите данные в формате JSON, как только вы проанализирован его вы работаете с обычным массивом JavaScript. Поэтому ваша проблема не имеет ничего общего с JSON, и я отредактирую ее соответствующим образом. Для вашего фактического вопроса взгляните на 'Array # sort': https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort. Затем вам нужно выяснить, как определить, какие строки соответствуют «самому». –
вот библиотека 'fuzzy search', которая может помочь http://kiro.me/projects/fuse.html – charlietfl