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 相关文章推荐
学习jquery必备 api中英文对照的chm手册 下载
May 03 Javascript
使用jQuery的将桌面应用程序引入浏览器
Nov 19 Javascript
JavaScript之引用类型介绍
Aug 10 Javascript
JavaScript截取字符串的2个函数介绍
Aug 27 Javascript
js跨域问题浅析及解决方法优缺点对比
Nov 08 Javascript
JavaScript删除指定子元素代码实例
Jan 13 Javascript
jquery popupDialog 使用 加载jsp页面的方法
Oct 25 Javascript
微信小程序 图片绝对定位(背景图片)
Apr 05 Javascript
JS设置手机验证码60s等待实现代码
Jun 14 Javascript
使用socket.io制做简易WEB聊天室
Jan 02 Javascript
vue-router路由懒加载的实现(解决vue项目首次加载慢)
Aug 28 Javascript
vue-cli2 构建速度优化的实现方法
Jan 08 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
可快速识别放射性物质-国外大神教你diy一个开放式辐射探测器
2020/03/12 无线电
咖啡的种类和口感
2021/03/03 新手入门
PHP中显示格式化的用户输入
2006/10/09 PHP
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
Linux下CoreSeek及PHP扩展模块的安装
2012/09/23 PHP
解析linux下安装memcacheq(mcq)全过程笔记
2013/06/27 PHP
php 邮件发送问题解决
2014/03/22 PHP
php5.4以上版本GBK编码下htmlspecialchars输出为空问题解决方法汇总
2015/04/03 PHP
thinkPHP3.2使用RBAC实现权限管理的实现
2019/08/27 PHP
基于laravel-admin 后台 列表标签背景的使用方法
2019/10/03 PHP
网页常用特效代码整理
2006/06/23 Javascript
javascript 有趣而诡异的数组
2009/04/06 Javascript
对frameset、frame、iframe的js操作示例代码
2013/08/16 Javascript
判断window.onload是否多次使用的方法
2014/09/21 Javascript
jQuery中:last-child选择器用法实例
2014/12/31 Javascript
简述JavaScript的正则表达式中test()方法的使用
2015/06/16 Javascript
JQUERY实现网页右下角固定位置展开关闭特效的方法
2015/07/27 Javascript
JS+CSS实现仿支付宝菜单选中效果代码
2015/09/25 Javascript
jQuery post数据至ashx实例详解
2016/11/18 Javascript
canvas快速绘制圆形、三角形、矩形、多边形方法介绍
2016/12/29 Javascript
js仿iphone秒表功能 计算平均数
2017/01/11 Javascript
js事件冒泡与事件捕获详解
2017/02/20 Javascript
jQuery简介_动力节点Java学院整理
2017/07/04 jQuery
easyui datagrid 表格中操作栏 按钮图标不显示的解决方法
2017/07/27 Javascript
还不懂递归?读完这篇文章保证你会懂
2018/07/29 Javascript
[02:50]【扭转乾坤,只此一招】DOTA2永雾林渊版本开启新篇章
2020/12/22 DOTA
Python中的文件和目录操作实现代码
2011/03/13 Python
jupyter实现重新加载模块
2020/04/16 Python
Python 如何对文件目录操作
2020/07/10 Python
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
伦敦剧院门票:From The Box Office
2018/06/30 全球购物
捐款倡议书格式范文
2014/05/14 职场文书
重阳节活动主持词
2015/07/04 职场文书
pytorch显存一直变大的解决方案
2021/04/08 Python
Python关于OS文件目录处理的实例分享
2021/05/23 Python
SpringBoot前端后端分离之Nginx服务器下载安装过程
2022/08/14 Servers