可以看看服务端是直接输出的字符,还是输出的Json。
如果输出的json,客户端用console.log输出看到的是ok,firebug之类的工具看到也是ok,
但是用代码:
var jmz = {}; jmz.GetLength = function(str) { return str.replace(/[\u0391-\uFFE5]/g,"aa").length; //先把中文替换成两个字节的英文,在计算长度 }; alert(jmz.GetLength('ok')); //data是ajax返回的,ajax的数据类型是html alert(jmz.GetLength(data));
会看到第一个是2个长度,后面一个是4个长度。
修复问题就是,如果服务端直接输出的字符,ajax的数据类型设置为Html,如果服务端是输出的Json,ajax的数据类型设置为json.
------------正 文 已 结 束, 感 谢 您 的 阅 读 (折雨的天空)--------------------
转载请注明本文标题和链接:《js里返回字符ok与字符ok比较不相等的问题》
发表评论