如果第二个参数 bUnicode255For1 === true,则所有字符长度为 1
否则如果字符 Unicode 编码 > 255 则长度为 2
function strLength(s, bUnicode255For1) {
if(bUnicode255For1 === true){
return s.length;
}
var num = 0;;
//es6 ( for of )
//for(var x of s){
// x.charCodeAt()>255?num+=2:num+=1;
//}
for(var i=0;i<s.length;i++){
s.charCodeAt(i)>255?num+=2:num+=1;
}
return num;
} 用es6 新特性 for of 更加简单 可是牛客不支持~~
function strLength(s, bUnicode255For1) {
if (bUnicode255For1 === true) {
return s.length;
}else {
var l = 0;
for (var i in s){
if(s.charCodeAt(i)>255){
l = l+2;
} else {
l = l+1;
}
}
return l;
}
}