function utf16toEntities(str){
var patt=/\ud800-\udbff/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;
}
utf16toEntities('');