JS 文字符串转换unicode编码函数


Posted in Javascript onMay 30, 2009
function uniencode(text) 
{ 
text = escape(text.toString()).replace(/\+/g, "%2B"); 
var matches = text.match(/(%([0-9A-F]{2}))/gi); 
if (matches) 
{ 
for (var matchid = 0; matchid < matches.length; matchid++) 
{ 
var code = matches[matchid].substring(1,3); 
if (parseInt(code, 16) >= 128) 
{ 
text = text.replace(matches[matchid], '%u00' + code); 
} 
} 
} 
text = text.replace('%25', '%u0025'); 
return text; 
}

当然服务器端要对编码过的字符串进行第二次转码.把字符串转换成UTF-8编码. 
function convert_int_to_utf8($intval) 
{ 
$intval = intval($intval); 
switch ($intval) 
{ 
// 1 byte, 7 bits 
case 0: 
return chr(0); 
case ($intval & 0x7F): 
return chr($intval); 
// 2 bytes, 11 bits 
case ($intval & 0x7FF): 
return chr(0xC0 | (($intval >> 6) & 0x1F)) . 
chr(0x80 | ($intval & 0x3F)); 
// 3 bytes, 16 bits 
case ($intval & 0xFFFF): 
return chr(0xE0 | (($intval >> 12) & 0x0F)) . 
chr(0x80 | (($intval >> 6) & 0x3F)) . 
chr (0x80 | ($intval & 0x3F)); 
// 4 bytes, 21 bits 
case ($intval & 0x1FFFFF): 
return chr(0xF0 | ($intval >> 18)) . 
chr(0x80 | (($intval >> 12) & 0x3F)) . 
chr(0x80 | (($intval >> 6) & 0x3F)) . 
chr(0x80 | ($intval & 0x3F)); 
} 
}

这样中文字符串就可以转换成UTF-8编码.这种方法适合各种服务器环境..
Javascript 相关文章推荐
一段利用WSH获取登录时间的jscript代码
May 11 Javascript
jquery时间下拉框小例子
Apr 15 Javascript
jquery为页面增加快捷键示例
Jan 31 Javascript
JavaScript中的正则表达式简明总结
Apr 04 Javascript
js实现顶部可折叠的菜单工具栏效果实例
May 09 Javascript
Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别
Dec 30 Javascript
微信小程序 icon组件详细及实例代码
Oct 25 Javascript
JS中将多个逗号替换为一个逗号的实现代码
Jun 23 Javascript
js中的数组对象排序分析
Dec 11 Javascript
JS数组进阶示例【数组的几种函数用法】
Jan 16 Javascript
node.js 微信开发之定时获取access_token
Feb 07 Javascript
jQuery实现广告显示和隐藏动画
Jul 04 jQuery
Javascript 日期对象Date扩展方法
May 30 #Javascript
Jquery 基础学习笔记之文档处理
May 29 #Javascript
Jquery 基础学习笔记
May 29 #Javascript
javascript AutoScroller 函数类
May 29 #Javascript
关于JavaScript的一些看法
May 27 #Javascript
广告切换效果(缓动切换)
May 27 #Javascript
js 图片缩放(按比例)控制代码
May 27 #Javascript
You might like
PHP面向对象的进阶学习(抽像类、接口、final、类常量)
2012/05/07 PHP
从ThinkPHP3.2.3过渡到ThinkPHP5.0学习笔记图文详解
2019/04/03 PHP
JavaScript 自动完成脚本整理(33个)
2009/10/20 Javascript
js 获取计算后的样式写法及注意事项
2013/02/25 Javascript
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
2014/09/03 Javascript
使用JavaScript实现连续滚动字幕效果的方法
2015/07/07 Javascript
javascript文本模板用法实例
2015/07/31 Javascript
微信小程序 Video API实例详解
2016/10/02 Javascript
JavaScript实现垂直向上无缝滚动特效代码
2016/11/23 Javascript
JS实现的简单拖拽功能示例
2017/03/13 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
Vue项目History模式404问题解决方法
2018/10/31 Javascript
vue使用better-scroll实现下拉刷新、上拉加载
2018/11/23 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
vue 实现LED数字时钟效果(开箱即用)
2019/12/08 Javascript
[15:09]DOTA2国际邀请赛采访专栏:Loda
2013/08/06 DOTA
详解Python中 sys.argv[]的用法简明解释
2017/12/20 Python
python networkx 包绘制复杂网络关系图的实现
2019/07/10 Python
python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
2020/02/28 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
2020/09/20 Python
html5绘制时钟动画
2014/12/15 HTML / CSS
Ray-Ban雷朋美国官网:全球领先的太阳眼镜品牌
2016/07/20 全球购物
地球上最先进的胡子和头发修剪器:Bevel
2018/01/23 全球购物
美国韩国化妆品和护肤品购物网站:Beautytap
2018/07/29 全球购物
毕业研究生的自我鉴定
2013/11/30 职场文书
《长城和运河》教学反思
2014/04/14 职场文书
12岁生日演讲稿
2014/05/14 职场文书
国际贸易专业自荐信
2014/06/10 职场文书
电子商务专业毕业生自荐书
2014/06/22 职场文书
企业委托书范本
2014/09/13 职场文书
机关作风建设自查报告
2014/10/22 职场文书
终止劳动合同通知书
2015/04/16 职场文书
留学文书中的个人陈述,应该注意哪些问题?
2019/08/23 职场文书
JavaScript中isPrototypeOf函数
2021/11/07 Javascript
django 认证类配置实现
2021/11/11 Python