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 相关文章推荐
utf8的编码算法 转载
Dec 27 Javascript
Js 获取当前日期时间及其它操作实现代码
Mar 04 Javascript
jQuery实现长文字部分显示代码
May 13 Javascript
Ajax异步提交表单数据的说明及方法实例
Jun 22 Javascript
举例讲解JavaScript substring()的使用方法
Nov 09 Javascript
jQuery实现从身份证号中获取出生日期和性别的方法分析
Feb 25 Javascript
基于jQuery实现简单人工智能聊天室
Feb 10 Javascript
JavaScript 基础表单验证示例(纯Js实现)
Jul 20 Javascript
浅谈在react中如何实现扫码枪输入
Jul 04 Javascript
vue移动端轻量级的轮播组件实现代码
Jul 12 Javascript
layui 监听select选择 获取当前select的ID名称方法
Sep 24 Javascript
JS数组的常用10种方法详解
May 08 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
php页面防重复提交方法总结
2013/11/25 PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
2013/12/25 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(九)
2014/06/24 PHP
ThinkPHP模板IF标签用法详解
2014/07/01 PHP
php实现XSS安全过滤的方法
2015/07/29 PHP
Zend Framework教程之Autoloading用法详解
2016/03/08 PHP
PHP判断表达式中括号是否匹配的简单实例
2016/10/22 PHP
YII框架行为behaviors用法示例
2019/04/26 PHP
TP5框架页面跳转样式操作示例
2020/04/05 PHP
JS BASE64编码 window.atob(), window.btoa()
2021/03/09 Javascript
在jQuery 1.5中使用deferred对象的代码(翻译)
2011/03/10 Javascript
jquery 列表双向选择器之改进版
2013/08/09 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
2014/06/05 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
深入分析JSON编码格式提交表单数据
2015/06/25 Javascript
ajax 提交数据到后台jsp页面及页面跳转问题
2017/01/19 Javascript
如何理解Vue的v-model指令的使用方法
2018/07/19 Javascript
最适应的vue.js的form提交涉及多种插件【推荐】
2018/08/27 Javascript
使用Object.defineProperty如何巧妙找到修改某个变量的准确代码位置
2018/11/02 Javascript
详解async/await 异步应用的常用场景
2019/05/13 Javascript
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
原生JavaScript实现贪吃蛇游戏
2020/11/04 Javascript
[31:01]2014 DOTA2国际邀请赛中国区预选赛5.21 CNB VS Orenda
2014/05/23 DOTA
python 换位密码算法的实例详解
2017/07/19 Python
python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例
2020/02/27 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
Python 将代码转换为可执行文件脱离python环境运行(步骤详解)
2021/01/25 Python
香港礼品网站:GiftU eshop
2017/09/01 全球购物
大学生优秀的自我评价分享
2013/10/22 职场文书
快餐店的创业计划书范文
2014/01/29 职场文书
幼儿园大班评语大全
2014/04/17 职场文书
2015年初中生自我评价范文
2015/03/03 职场文书
标会主持词应该怎么写?
2019/08/15 职场文书
实习员工转正的评语汇总,以备不时之需
2019/12/17 职场文书
Vue接口封装的完整步骤记录
2021/05/14 Vue.js
详解CSS故障艺术
2021/05/25 HTML / CSS