JavaScript 过滤关键字
程序员文章站
2022-06-13 18:26:38
效果图:
话不多说,请看代码:
...
效果图:
话不多说,请看代码:
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>title</title> <style> em { font-size: 16px; color: red; } </style> </head> <body> <p id="cont">javascript过滤关键字的方法javascript过滤关键字的方法</p> <script> //================================= 可用状态代码 ===================================== // var arr = ['java','关键字', '方法'], // arrtext = arr.join('|'), // var params = document.queryselector('#cont'); // // // 替换关键字 // params.innerhtml = params.innerhtml.replace(new regexp(arrtext, "ig"), "<em>$&</em>"); // var arr = []; // console.log(arr); //================================= 修改后的代码 ===================================== /** * 过滤关键字 * @param keyarr 需要过滤的关键字数组 * @param ele 过滤的节点 */ function filtercontent(keyarr, ele) { /** * 一个程序的标准准则 * 1. 可用, 可以实现核心的需求 * 2. 健壮, 兼容性处理, 边界处理, 异常处理, 用户输入校验 * 3. 可靠, 任何时候都要有返回值 * 4. 宽容, 对需求宽容, 对调用着宽容, 对维护者宽容 * 5. 精益求精, 可靠的注释... */ try { // 检测是否为 undefined 或者为一个数组,或者数组长度是否大于 1, 这里的返回 -1 只是为了有返回值, 也可以不写 if (keyarr === 'undefined' || !(keyarr instanceof array) || keyarr.length < 1) return -1; // 将数组里面的元素以 | 进行合并方便进行正则比较, 如 张三|李四 var arrtxt = keyarr.join('|'), regobj = new regexp(arrtxt, 'ig'); // 替换关键字 ele.innerhtml = ele.innerhtml.replace(regobj, "<em>$&</em>"); } catch (e) { console.log('出错啦~' + e); } } // 调用 var arr = ['java','关键字', '方法']; var params = document.queryselector('#cont'); filtercontent(arr, params); </script> </body> </html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
下一篇: 微信小程序中子页面向父页面传值实例详解