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 相关文章推荐
写js时遇到的一些小问题
Dec 06 Javascript
动态加载dtree.js树treeview(示例代码)
Dec 17 Javascript
Javascript浮点数乘积运算出现多位小数的解决方法
Feb 17 Javascript
使用JavaScript判断图片是否加载完成的三种实现方式
May 04 Javascript
JavaScript中的Math.SQRT1_2属性使用简介
Jun 14 Javascript
jQuery.extend 函数及用法详细
Sep 06 Javascript
原生JS实现拖拽图片效果
Aug 27 Javascript
jQuery为DOM动态追加事件的方法
Feb 16 Javascript
Vue.js开发环境快速搭建教程
Mar 17 Javascript
bootstrap3使用bootstrap datetimepicker日期插件
May 24 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
Jul 31 Javascript
详解关于Angular4 ng-zorro使用过程中遇到的问题
Dec 05 Javascript
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脚本数据库功能详解(下)
2006/10/09 PHP
PHP语法速查表
2006/12/06 PHP
php入门之连接mysql数据库的一个类
2012/04/21 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
2019/10/09 PHP
最简单的JavaScript图片轮播代码(两种方法)
2015/12/18 Javascript
JavaScript String 对象常用方法总结
2016/04/28 Javascript
完美解决jQuery符号$与其他javascript 库、框架冲突的问题
2016/08/09 Javascript
jQuery css() 方法动态修改CSS属性
2016/09/25 Javascript
vue2.0 实现页面导航提示引导的方法
2018/03/13 Javascript
JavaScript模拟实现自由落体效果
2018/08/28 Javascript
React+Antd+Redux实现待办事件的方法
2019/03/14 Javascript
原生javascript运动函数的封装示例【匀速、抛物线、多属性的运动等】
2020/02/23 Javascript
Vue移动端项目实现使用手机预览调试操作
2020/07/18 Javascript
绘制微信小程序验证码功能的实例代码
2021/01/05 Javascript
Python创建xml的方法
2015/03/10 Python
python使用pymysql实现操作mysql
2016/09/13 Python
Python如何实现MySQL实例初始化详解
2017/11/06 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
2020/02/26 Python
在python中使用nohup命令说明
2020/04/16 Python
Python创建简单的神经网络实例讲解
2021/01/04 Python
Python 打印自己设计的字体的实例讲解
2021/01/04 Python
福克斯租车:Fox Rent A Car
2017/04/13 全球购物
Clearly澳大利亚:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
澳大利亚家具和家居用品购物网站:Zanui
2018/12/29 全球购物
网络技术支持面试题
2013/04/22 面试题
主持人演讲稿范文
2013/12/28 职场文书
意外伤害赔偿协议书范本
2014/09/28 职场文书
六五普法宣传标语
2014/10/06 职场文书
司法局2014法制宣传日活动总结
2014/11/01 职场文书
英语投诉信范文
2015/07/03 职场文书
2016年春季运动会通讯稿
2015/11/25 职场文书
社交电商模式的兴起:这些新的商机千万别错过
2019/07/26 职场文书
pytorch中的model=model.to(device)使用说明
2021/05/24 Python
Python selenium的这三种等待方式一定要会!
2021/06/10 Python
python中的3种定义类方法
2021/11/27 Python