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 相关文章推荐
IE8 原生JSON支持
Apr 13 Javascript
用JavaScript实现类似于ListBox功能示例代码
Mar 09 Javascript
Extjs 4.x 得到form CheckBox 复选框的值
May 04 Javascript
JavaScript正则表达式之multiline属性的应用
Jun 16 Javascript
jQuery.prop() 使用详解
Jul 19 Javascript
基于jquery实现在线选座订座之影院篇
Aug 24 Javascript
基于JS实现翻书效果的页面切换样式
Feb 16 Javascript
js通过keyCode值判断单击键盘上某个键,然后触发指定的事件方法
Feb 19 Javascript
Node.js dgram模块实现UDP通信示例代码
Sep 26 Javascript
vue 实现购物车总价计算
Nov 06 Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
Dec 11 Javascript
vue-cli4.0多环境配置变量与模式详解
Dec 30 Vue.js
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实现的文件操作类及文件下载功能示例
2016/12/24 PHP
项目实践之javascript技巧
2007/12/06 Javascript
js控制div及网页相关属性的代码
2009/12/19 Javascript
javascript数组的使用
2013/03/28 Javascript
jQuery ajax dataType值为text json探索分享
2013/09/23 Javascript
Javascript中的异步编程规范Promises/A详细介绍
2014/06/06 Javascript
javascript正则表达式使用replace()替换手机号的方法
2015/01/19 Javascript
jQuery的Read()方法代替原生JS详解
2016/11/08 Javascript
JS中substring与substr的用法
2016/11/16 Javascript
工作中常用的js、jquery自定义扩展函数代码片段汇总
2016/12/22 Javascript
JS求解三元一次方程组值的方法
2017/01/03 Javascript
Javascript刷新页面的实例
2017/09/23 Javascript
Vuejs 实现简易 todoList 功能 与 组件实例代码
2018/09/10 Javascript
python多线程http下载实现示例
2013/12/30 Python
Python实现按学生年龄排序的实际问题详解
2017/08/29 Python
Python实现随机选择元素功能
2017/09/14 Python
python用户管理系统的实例讲解
2017/12/23 Python
解决Python中list里的中文输出到html模板里的问题
2018/12/17 Python
Python脚本按照当前日期创建多级目录
2019/03/01 Python
Pandas之DataFrame对象的列和索引之间的转化
2019/06/25 Python
django 基于中间件实现限制ip频繁访问过程详解
2019/07/30 Python
Python编程快速上手——Excel到CSV的转换程序案例分析
2020/02/28 Python
Ubuntu中配置TensorFlow使用环境的方法
2020/04/21 Python
IE支持HTML5的解决方法
2009/10/20 HTML / CSS
中国第一家杂志折扣订阅网:杂志铺
2016/08/30 全球购物
澳大利亚领先的女帽及配饰公司:Morgan&Taylor
2019/12/01 全球购物
Android interview questions
2016/12/25 面试题
出国考察邀请函
2014/01/21 职场文书
社会治安综合治理管理责任书
2014/04/16 职场文书
国家励志奖学金个人先进事迹材料
2014/05/04 职场文书
美国旅游签证工作证明
2014/10/14 职场文书
2014年售后服务工作总结
2014/11/18 职场文书
2015年计生协会工作总结
2015/04/24 职场文书
办公室主任岗位竞聘书
2015/09/15 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS
使用redis实现延迟通知功能(Redis过期键通知)
2021/09/04 Redis