重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
成都创新互联公司专注于宿豫企业网站建设,响应式网站建设,商城网站制作。宿豫网站建设公司,为宿豫等地区提供建站服务。全流程按需网站开发,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
小伙伴们,在开发中有没有遇到过发布帖子或者实时聊天需要发送到一些emoji表情的。
但是每当我们直接将emoji表情提交到后台的接口又会报错,因为字符串的格式不一致导致数据无法添加致数据库。
那么作为前端的我们就要将我们要提交的数据,通过如下方法正则获取所有的emoji表情,将其转成 base64 。
// 将emoji表情其转成 base64 utf16toEntities:function(str) { var patt = /[\ud800-\udbff][\udc00-\udfff]/g; // 检测utf16字符正则 str = str.replace(patt, function (char) { var H, L, code; if (char.length === 2) { H = char.charCodeAt(0); // 取出高位 L = char.charCodeAt(1); // 取出低位 code = (H - 0xD800) * 0x400 + 0x + L - 0xDC00; // 转换算法 return "" + code + ";"; } else { return char; } }); return str; },