js字符串长度计算(一个汉字==两个字符)和字符串截取

js字符串长度计算(一个汉字==两个字符)和字符串截取

 

String.prototype.realLength = function() {
    return this.replace(/[^\x00-\xff]/g, "**").length; // [^\x00-\xff] - 匹配非双字节的字符 
};
String.prototype.realSubstring = function(n){
    var str = this||‘‘;
    if(this.realLength()<=n){return this;}
    var m=Math.floor(n/2);
    for(var i=m;i<this.length;i++){
        if(this.substr(0,i).realLength()>=n){
            return this.substr(0,i)+"...";
        }
    }
    return this;
}

 "这是一个abcd测试".realLength(); //16

 "这是一个abcd测试".realSubstring(8); //"这是一个"

 "这是一个abcd测试".realSubstring(9); //"这是一个a"

 "这是一个abcd测试".realSubstring(7); //"这是一个"

 

 

本文原创,转载保留网址!http://www.cnblogs.com/cssfirefly/p/3768437.html 

 

js字符串长度计算(一个汉字==两个字符)和字符串截取,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。