//表情转码
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;
// 转换算法
var ss = "&#" + code + ";";
return ss;
} else {
return char;
}
});
return str;
},
//表情解码
uncodeUtf16(str){
var reg = /\&#.*?;/g;
var result = str.replace(reg,function(char){
var H,L,code;
if(char.length == 9 ){
code = parseInt(char.match(/[0-9]+/g));
H = Math.floor((code-0x10000) / 0x400)+0xD800;
L = (code - 0x10000) % 0x400 + 0xDC00;
return unescape("%u"+H.toString(16)+"%u"+L.toString(16));
}else{
return char;
}
});
return result;
}
前端emijo表情转码解码
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1、js通过escape函数转码的公式如下: var txt=escape(content); //content...
- 前言 开发过程中,遇到了带有Emoji表情的字符串无法存入后台数据库问题。原因是Mysql的utf8编码最多3个字...
- 需求 Decode :需要将 "<p>qqqq</p>" 转为 qqqq E...