搜刮关键字高亮 JS replace() 变量的全局替代

一般搜刮返来关键字高亮是 后端直接拼好字符串给我们的。
固然也有比方 后端偶然不想做, 那就我们替代下好了…
JS没有replaceAll的。

//毛病树模
var data = '圣诞节卡都是快活的事快活速率回家快活';
var key = '快活';
data.replace(key,"替代"); 》》》 只替代了第一个快活

data.replace(/key/g,'替代') 》》》 完整不替代

so 以下两个要领

//一 应用 JavaScript eval() 函数
//应当防止或削减运用eval 不安全,异常耗机能(2次,一次剖析成js语句,一次实行)

var data = '圣诞节卡都是快活的事快活速率回家快活';
var key = '快活';
var reg = eval('/'+key+'/g');
data.replace(reg,'替代')
//二 应用 JavaScript 的 RegExp 对象
//更引荐运用

var data = [{"title": "少儿保证、理财万能少儿产物"},
            {"title": "少儿保证、理财万能幼儿产物"},
            {"title": "少儿保证、理财万能成年产物"},
            {"title": "少儿保证、理财万能老年产物"}
            ]

var search_key = '少儿';
var reg = new RegExp(search_key,'g');
var html = '';
for(var i=0; i< data.length; i++){
 html += '<li>'+data[i].title.replace(reg,('<span style="color:red">'+search_key+'</span>'))+'</li>'
}

console.log(html)

mark一下 仅供参考 迎接改正补充 end

    原文作者:Jerry_大怪兽
    原文地址: https://segmentfault.com/a/1190000018588370
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞