前端防止表情输入

编程入门 行业动态 更新时间:2024-10-09 00:52:39

前端防止<a href=https://www.elefans.com/category/jswz/34/1770014.html style=表情输入"/>

前端防止表情输入

        近期项目中,测试发现,可以将表情输入到各种input中,并提交到后端数据库。

        由于给每一个input框加入正则校验,工作量比较大,所以想到了再每次提交请求时,递归遍历post请求中data数据,把所有string类型的字段进行校验,将表情剔除。

//判读数据类型
getType=(val)=>{return  Object.prototype.toString.call(val);
}//循环结构体 正则去除string类型中的表情
forObject = (data) => {for (var key in data) {let type = getType(data[key]);if (type === "[object String]") {//正则校验表情var reg = /[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]| [\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0- 9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F| [\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030/ig //浅拷贝 直接 赋值 剔除表情的string 类型data[key] = data[key].replace(reg, '')}//当类型为objct或者数组时 递归调用 本函数 进入下一级嵌套if (type === "[object Object]"||type === "[object Array]") {forObject(data[key])}}
}

更多推荐

前端防止表情输入

本文发布于:2024-02-13 20:36:41,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1760285.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:表情

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!