js取字符串长度


var str="hihaifsdf";
var str_l=str.length;
用侍敏昌正则表达式:拿吵
//取字符串的长度,中文为2个,老扒英文或数字为1个
function test(){
var str="一a二,。";
var retV=str.match(/[^\x00-\xff]/ig);

var allLength=0;
if(retV==null){
allLength=allLength+str.length;
}else{
allLength=allLength+(str.length+retV.length);
}
alert(allLength);
}
如果其中有英文、数字、符号等,用楼上的 alert("1sS#符辩烂猛".length) 方法是极度不准确的。其结果为 5

alert(len("1sS#符")) //英历型文、携桥数字、符号均为一个字节,汉字为两个。 因此结果为 6

function len(s) {
var l = 0;
var a = s.split("");
for (var i=0;i<a.length;i++) {
if (a[i].charCodeAt(0)<299) {
l++;
} else {
l+=2;
}
}
return l;
}
如果其中有英文、数字、符号等,用楼上的 alert("1sS#符辩烂猛".length) 方法是极度不准确的。其结果为 5

alert(len("1sS#符")) //英历型文、携桥数字、符号均为一个字节,汉字为两个。 因此结果为 6

function len(s) {
var l = 0;
var a = s.split("");
for (var i=0;i<a.length;i++) {
if (a[i].charCodeAt(0)<299) {
l++;
} else {
l+=2;
}
}
return l;
}