Javascript 中文字符串处理额外注意事项
var strSex="男" ;
在GB2312编码中,假设有另一变量strAxSex是从ActiveX控件中读出的BSTR值,原始值也是"男" ,这时做在javascript程序中做比较:strSex==strAxSex为false,也就是"男"!="男"。
但如果从VS2005调试中看表达式 strSex==strAxSex则为true,细看strSex.charCodeAt(0)与strAxSex.charCodeAt(0)也是相等的,而strSex.charCodeAt(0)与strAxSex.charCodeAt(0)也相等都为NaN。
再注意看vs2005变量值提示,可以看到strSex="□□“。原来是字符常量非unicode,导致strSex所赋值不同于"男"的unicode值。尝试把js文件另存为编码utf-8,再次运行,终于 strSex==strAxSex为true,程序运行与调试器表现一致,和日常逻辑也一致了。
相关推荐
-
JS实现含有中文字符串的友好截取功能分析
本文实例讲述了JS实现含有中文字符串的友好截取功能.分享给大家供大家参考,具体如下: 在显示字符串的时候,避免字符串过长往往会对字符串进行截取操作,通常会用到js 的 substr 或者 substring方法, 以及 字符串的length属性 对于非中文的字符串处理是很简单的,但是中文字符的 length 属性值 是1 而不是 2 ,所以处理就不是很友好了. 例如 你有一个字符串 1234567890 和 一二三四五六七八九零, 你只想显示五位长度,往往会这样操作 str =
-
JS字符串长度判断,超出进行自动截取的实例(支持中文)
今天一个小弟问我的问题,在文本框中输入字符,如果超出指定长度,就把它截取,要求中文等于两个字符的长度,我找一下资料,把这个功能实现了, 下面是JS代码: <html> <script src="http://jb51.net/script/jquery.js" type="text/javascript"></script> <body> <input type="text" name=&qu
-
用javascript实现截取字符串包含中文处理的函数
1.substring 方法 定义和用法 substring 方法用于提取字符串中介于两个指定下标之间的字符. 语法 stringObject.substring(start,stop) 参数 描述 start 必需.一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置. stop 可选.一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1.如果省略该参数,那么返回的子串会一直到字符串的结尾. 返回值 一个新的字符串,该字符串值包
-
教你如何使用PHP输出中文JSON字符串
复制代码 代码如下: json_endoce: http://cn.php.net/json_encodejson_dedoce: http://cn.php.net/json_decode json_encode - 对变量进行 JSON 编码,并返回 value 值的 JSON 形式,例如: 复制代码 代码如下: <?php$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);echo json_encode($arr)
-
JS判断字符串长度的5个方法(区分中文和英文)
目的:计算字符串长度(英文占1个字符,中文汉字占2个字符) 方法一: 复制代码 代码如下: String.prototype.gblen = function() { var len = 0; for (var i=0; i<this.length; i++) { if (this.charCodeAt(i)>127 || this.charCodeAt(i)==94) { len += 2; } else { len ++;
-
JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)
本文实例讲述了JS实现对中文字符串进行utf-8的Base64编码的方法.分享给大家供大家参考,具体如下: 要进行编码的字符串:"select 用户名 from 用户" 使用JAVA进行编码,Java程序: String sql = "select 用户名 from 用户"; String encodeStr = new String(Base64.encode(sql.getBytes("UTF-8"))); // 编码 System.out.
-
js substr支持中文截取函数代码(中文是双字节)
复制代码 代码如下: <script language="JavaScript"> //得到字符总数function getChars(str) { var i = 0; var c = 0.0; var unicode = 0; var len = 0; if (str == null || str == "") { return 0; } len = str.length; for(i = 0; i < len; i++) { unico
-
中文字符串截取的js函数代码
为了解决这个问题昨天写了根据字节数截取字符串的函数.具体使用很简单,跟String.subString(start, end)一样使用就可.比如:var str = "诶必塞第衣爱抚即"; var str1 = str.subCHStr(2, 2); var str2 = str.subCHString(2, 4); alert(str1 + " == " + str2); 复制代码 代码如下: Code//计算字符串长度String.prototype.strLe
-
JavaScript过滤字符串中的中文与空格方法汇总
js 如何过滤字符串里中文或空格呢?方法有很多种,我们可以使用替换与正则表达式来实现,本文向大家介绍两个简单的例子,感兴趣的朋友可以参考一下. 1.javascript过滤空格: function moveSpace() { var str = " abc defg"; alert(str.replace(/[ ]/g, "")); } moveSpace(); 2.javascript过滤中文: var title ="字符串zifuchuan"
-
js计算字符串长度包含的中文是utf8格式
方法一: 复制代码 代码如下: function byteLength(str) { var byteLen = 0, len = str.length; if( !str ) return 0; for( var i=0; i<len; i++ ) byteLen += str.charCodeAt(i) > 255 ? 2 : 1; return byteLen;} 说明:byteLength(str)参数:string str: 要计算字节长度的字符串(非ASCII的字符算2字节) 方
随机推荐
- JVM 心得分享(加载 链接 初始化)
- Git 教程之安装配置详解
- jQuery实现类似淘宝购物车全选状态示例
- vue.js删除动态绑定的radio的指定项
- php通过baihui网API实现读取word文档并展示
- Linux 环境下编译安装MySQL5.6的笔记记录
- Hibernate实现悲观锁和乐观锁代码介绍
- 批处理检查输入实现代码
- Java abstract class 与 interface对比
- 详解Yii2 rules 的验证规则
- shell自定义函数及参数调用解析
- 详解Linux的SOCKET编程
- Android Service服务不被停止详解及实现
- NSString属性何时用strong何时用copy?
- 定义JavaScript二维数组采用定义数组的数组来实现
- JS根据生日月份和日期计算星座的简单实现方法
- python模拟登录百度代码分享(获取百度贴吧等级)
- 教你安装python Django(图文)
- 解析android中隐藏与显示软键盘及不自动弹出键盘的实现方法
- js轮播图无缝滚动效果