牛骨文教育服务平台(让学习变的简单)
博文笔记

emoji表情处理保存到数据库

创建时间:2017-08-03 投稿人: 浏览次数:137

/** 

 * emoji表情处理用

 * * 用于把用utf16编码的字符转换成实体字符,以供后台存储 * @param {string} str 将要转换的字符串,其中含有utf16字符将被自动检出 * @return {string} 转换后的字符串,utf16字符将被转换成&#xxxx;形式的实体字符 */ 

function  utf16toEntities (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 + 0x10000 + L - 0xDC00; // 转换算法

return "&#" + code + ";";

} else {

return char;

}

});

return str;

};

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。