自从chrome和ES6的普及,JS的性能和科学算法也日新月异。这次我就分享一个超简单的搜索算法。
let result = appData.map(item => Object.assign(item, {
"count": arr.map(i =>
item.name.toLowerCase().includes(i.toLowerCase()) ||
item.comment.toLowerCase().includes(i.toLowerCase())
).filter(i => !!i).length
})).filter(item => item.count > 0).sort((a, b) => b.count - a.count);
数据结构大概为
[
{"name":..., "comment":....,...},
{"name":..., "comment":....,...},
{"name":..., "comment":....,...},
...
]
非常适用于一些个人博客,个人Vlog主页,个人相册等等。送给喜欢分享的小伙伴!