JavaScript 过滤关键字


Posted in Javascript onMarch 20, 2017

效果图:

JavaScript 过滤关键字

话不多说,请看代码:

<!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>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
Jquery中getJSON在asp.net中的使用说明
Mar 10 Javascript
基于jquery实现的可编辑下拉框实现代码
Aug 02 Javascript
DOM 高级编程
May 06 Javascript
js实现文字垂直滚动和鼠标悬停效果
Dec 31 Javascript
javascript正则表达式总结
Feb 29 Javascript
Bootstrap 附加导航(Affix)插件实例详解
Jun 01 Javascript
在node中如何使用 ES6
Apr 22 Javascript
原生JS实现N级菜单的代码
May 21 Javascript
微信小程序 websocket 实现SpringMVC+Spring+Mybatis
Aug 04 Javascript
使用Easyui实现查询条件的后端传递并自动刷新表格的两种方法
Sep 09 Javascript
js 实现碰撞检测的示例
Oct 28 Javascript
js canvas实现五子棋小游戏
Jan 22 Javascript
Extjs表单输入框异步校验的插件实现方法
Mar 20 #Javascript
js实现鼠标拖动功能
Mar 20 #Javascript
基于vue2的table分页组件实现方法
Mar 20 #Javascript
详解Weex基于Vue2.0开发模板搭建
Mar 20 #Javascript
基于vue.js实现侧边菜单栏
Mar 20 #Javascript
微信小程序 参数传递实例代码
Mar 20 #Javascript
vue.js指令v-model使用方法
Mar 20 #Javascript
You might like
详细介绍:Apache+PHP+MySQL配置攻略
2006/09/05 PHP
消息持续发送的完整例子
2006/10/09 PHP
PHP 中dirname(_file_)讲解
2007/03/18 PHP
编写漂亮的代码 - 将后台程序与前端程序分开
2008/04/23 PHP
PHP 字符串正则替换函数preg_replace使用说明
2011/07/15 PHP
PHP实现二叉树的深度优先与广度优先遍历方法
2015/09/28 PHP
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
2013/01/27 Javascript
Jquery ajax执行顺序 返回自定义错误信息(实例讲解)
2013/11/06 Javascript
JQuery 控制内容长度超出规定长度显示省略号
2014/05/23 Javascript
javascript移动设备Web开发中对touch事件的封装实例
2014/06/05 Javascript
5个书写JavaScript代码的坏习惯,看看你中枪了没?
2014/11/06 Javascript
jQuery中使用each处理json数据
2015/04/23 Javascript
JS实现pasteHTML兼容ie,firefox,chrome的方法
2016/06/22 Javascript
基于jQuery的ajax方法封装
2016/07/14 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
2017/09/06 Javascript
Koa 中的错误处理解析
2019/04/09 Javascript
ES6中字符串的使用方法扩展
2019/06/04 Javascript
js实现指定时间倒计时效果
2019/08/26 Javascript
通过实例了解JS 连续赋值
2019/09/24 Javascript
[01:00:14]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第三场
2018/04/10 DOTA
Python图像灰度变换及图像数组操作
2016/01/27 Python
python实现根据文件关键字进行切分为多个文件的示例
2018/12/10 Python
使用python 对验证码图片进行降噪处理
2019/12/18 Python
python 多线程死锁问题的解决方案
2020/08/25 Python
python 获取域名到期时间的方法步骤
2021/02/10 Python
html5+css3进度条倒计时动画特效代码【推荐】
2016/03/08 HTML / CSS
HTML5图片层叠的实现示例
2020/07/07 HTML / CSS
几道Web/Ajax的面试题
2016/11/05 面试题
服务中心夜班服务员岗位职责
2013/11/27 职场文书
演讲比赛获奖感言
2014/02/02 职场文书
八年级语文教学反思
2014/02/11 职场文书
驾驶员培训方案
2014/05/01 职场文书
女生抽烟检讨书
2014/10/05 职场文书
迟到检讨书2000字(精选篇)
2014/10/07 职场文书
少儿励志名言(80句)
2019/08/14 职场文书
ES6 解构赋值的原理及运用
2021/05/25 Javascript