对javascript或jquery中的单词进行比较后的列表值进行排序
sort list value after comparing a word in javascript or jquery
我想在与一个单词进行比较后对列表标记进行排序,比如如果多个语句中有单词"one",那么它应该首先排序,然后在其他语句中检查其他单词,比如其余语句中的"two",那么这个有单词"two)的语句应该在包含"one"的语句之后。请大家帮我写逻辑。看看我的代码,我只用于按字母顺序排序(基于下面代码中给出的状态)示例:类似于
- manoj kumar
- rohit koul
- sachin kumar
<script id="template" type="text/html">
<ul class="checklist" data-role="listview" data-inset="true" data-autodividers="true" id="mylist">
{{#container}}
{{#nid}}<li><a href="checklist-detail.html?nid={{nid}}">{{name}} - {{status}} {{#date}}<br/>
<span class="due-date">{{date}}</span>{{/date}}</a></li>{{/nid}}
{{/container}}
</ul>
</script>
look once my javascript code but this is not for my desire code it is only
for sort alphabetically (help me in this code that how to i write
condition or logic for sort according to particular word comparison)
var mylist = $('ul');
var listitems = mylist.children('li').get();
listitems.sort(function(a, b) {
var compA = $(a).text().toUpperCase();
var compB = $(b).text().toUpperCase();
return (compA < compB) ? -1 : (compA > compB) ? 1 : 0;
});
$.each(listitems, function(idx, itm) { mylist.append(itm); });
您可以根据标签是否包含预定义的有序单词列表中的单词来给标签打分。例如:
var ordered_words = ["kumar", "koul", "simon"]
var tags = ["manoj kumar", "rohit koul", "sachin kumar", "simon f (me)"]
var scored_tags = []
var i = 0, tag
while (tag = tags[i]) {
var j = 0, word, found = false
while (found == false && j < ordered_words.length) {
word = ordered_words[j]
if (tag.indexOf(word) != -1) {
scored_tags.push({tag: tag, score: j})
found = true
}
j++
}
i++
}
console.log(scored_tags)
这将输出:
[ { tag: 'manoj kumar', score: 0 },
{ tag: 'rohit koul', score: 1 },
{ tag: 'sachin kumar', score: 0 },
{ tag: 'simon f (me)', score: 2 } ]
然后,您可以使用得分参数对该数组进行排序,如下所示:
scored_tags.sort(function(a, b) {
var compA = a.score
var compB = b.score
return (compA < compB) ? -1 : (compA > compB) ? 1 : 0;
});
这是你可以玩的代码:
http://repl.it/Yil/2
相关文章:
- 为什么HTML5拖放的目标是孩子?(可排序列表)
- 当属性不一致时,如何根据属性对JS对象列表进行排序
- jQuery UI可排序-多连接列表拖动
- 如何在javascript中通过rtl字母表对列表进行排序和分组
- 如何在Javascript中创建排序、拖放多级列表
- 使用选项组对下拉列表进行排序
- JQuery根据连字符前的首字母对列表进行排序
- 可排序和可丢弃的淘汰列表
- 在Javascript中,当使用array.prush方法向列表中添加项目时,如何对其进行排序
- 使用JS或新查询对列表进行排序
- 对Soundcloud自定义播放器播放列表的顺序进行排序
- 如何在角度js的自动完成下拉列表中对项目列表(按字母顺序)进行排序
- 尝试将长列表排序为单独的列
- 不使用排序数组的动态列表排序
- 使用角度 js 按顺序列表排序
- 在JavaScript和MySQL中存储列表排序顺序的替代方法
- 如何用Vue.js动画化列表排序
- 按字母顺序对列表排序,末尾为字符
- IE7,jQuery-1.6.2:列表项向下移动到包含元素的下面(多列表排序)
- 按元素的值对列表排序