[セットトップ]jsはn文字を切り取ります.(中国語は2文字です.)

1268 ワード

使用方法:
dddは5文字を切り取ります.」.subCHStr(0,5)
//        ,      
 String.prototype.strToCharsCH = function(){
     var chars = new Array();
     for (var i = 0; i < this.length; i++){
         chars[i] = [this.substr(i, 1), this.isCHS(i)];
     }
     String.prototype.charsArray = chars;
     return chars;
 };
 //           
 String.prototype.isCHS = function(i){
 if (this.charCodeAt(i) > 255 || this.charCodeAt(i) < 0) 
    return true;
 else
     return false;
 };
 //     ( start   end  )
 String.prototype.subCHString = function(start, end){
     var len = 0;
     var str = "";
     this.strToCharsCH();
     for (var i = 0; i < this.length; i++) {
         if(this.charsArray[i][1])
             len += 2;
         else
             len++;
         if (end < len)
             return str;
         else if (start < len)
             str += this.charsArray[i][0];
     }
     return str;
 };
 //     ( start    length   )
 String.prototype.subCHStr = function(start, length){
     return this.subCHString(start, start + length);
 };
ps:        ,    ,    ,       (        )。
  QQ 209952809(     ,   csdn);        , happy。