<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    tbwshc

    JS截取字符長度(按字節)

    1.  
    2. * 
    3.  處理過長的字符串,截取并添加省略號 
    4.  注:半角長度為1,全角長度為2 
    5.   
    6.  pStr:字符串 
    7.  pLen:截取長度 
    8.   
    9.  return: 截取后的字符串 
    10.  *
    11. function autoAddEllipsis(pStr, pLen)  
    12.   
    13.     var _ret cutString(pStr, pLen);  
    14.     var _cutFlag _ret.cutflag;  
    15.     var _cutStringn _ret.cutstring;  
    16.   
    17.     if ("1" == _cutFlag)  
    18.         return _cutStringn "..." 
    19.     else  
    20.         return _cutStringn;  
    21.      
    22.  
    23.   
    24. * 
    25.  取得指定長度的字符串 
    26.  注:半角長度為1,全角長度為2 
    27.   
    28.  pStr:字符串 
    29.  pLen:截取長度 
    30.   
    31.  return: 截取后的字符串 
    32.  *
    33. function cutString(pStr, pLen)  
    34.   
    35.     // 原字符串長度  
    36.     var _strLen pStr.length;  
    37.   
    38.     var _tmpCode;  
    39.   
    40.     var _cutString;  
    41.   
    42.     // 默認情況下,返回的字符串是原字符串的一部分  
    43.     var _cutFlag "1" 
    44.   
    45.     var _lenCount 0;  
    46.   
    47.     var _ret false 
    48.   
    49.     if (_strLen <= pLen/2)  
    50.         _cutString pStr;  
    51.         _ret true 
    52.      
    53.   
    54.     if (!_ret)  
    55.         for (var 0; _strLen i++  
    56.             if (isFull(pStr.charAt(i)))  
    57.                 _lenCount += 2;  
    58.             else  
    59.                 _lenCount += 1;  
    60.              
    61.   
    62.             if (_lenCount pLen)  
    63.                 _cutString pStr.substring(0, i);  
    64.                 _ret true 
    65.                 break 
    66.             else if (_lenCount == pLen)  
    67.                 _cutString pStr.substring(0, 1);  
    68.                 _ret true 
    69.                 break 
    70.              
    71.          
    72.      
    73.       
    74.     if (!_ret)  
    75.         _cutString pStr;  
    76.         _ret true 
    77.      
    78.   
    79.     if (_cutString.length == _strLen)  
    80.         _cutFlag "0" 
    81.      
    82.   
    83.     return {"cutstring":_cutString, "cutflag":_cutFlag};  
    84.  
    85.   
    86. * 
    87.  判斷是否為全角 
    88.   
    89.  pChar:長度為1的字符串 
    90.  return: tbtrue:全角 
    91.           false:半角 
    92.  * 

    93.   
    94. function isFull (pChar) 
    95.   for (var 0; < pChar.strLen i++     
    96.     if ((pChar.charCodeAt(i) 128))  
    97.         return true 
    98.     else  
    99.         return false 
    100.     
    101. }
    102. }
    103. 用例:
    104. testStr = "測試1字符串";
      autoAddEllipsis(testStr, 1); // "測..."
      autoAddEllipsis(testStr, 2); // "測..."
      autoAddEllipsis(testStr, 3); // "測..."
      autoAddEllipsis(testStr, 4); // "測試..."
      autoAddEllipsis(testStr, 5); // "測試1..."
      autoAddEllipsis(testStr, 6); // "測試1..."
      autoAddEllipsis(testStr, 7); // "測試1字..."

    posted on 2012-09-17 14:20 chen11-1 閱讀(2655) 評論(1)  編輯  收藏

    Feedback

    # 地方e: JS截取字符長度(按字節) 2014-12-26 17:37 3

    斯蒂芬  回復  更多評論   


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 成人免费看黄20分钟| 国产精品白浆在线观看免费| 亚洲视频在线观看网站| 中文字幕无码毛片免费看| 国产性爱在线观看亚洲黄色一级片 | 国产三级在线免费观看| 久久亚洲国产成人精品无码区| 一级中文字幕免费乱码专区 | 国产成人亚洲综合无码精品| 久久久久久久国产免费看| 亚洲人JIZZ日本人| 久久精品一区二区免费看| 久久精品国产亚洲| 67pao强力打造高清免费| 亚洲区视频在线观看| 国内精品乱码卡1卡2卡3免费| 亚洲一区二区三区高清不卡| 国产精品久久免费视频| 欧洲乱码伦视频免费国产| 亚洲精品无码久久千人斩| 337P日本欧洲亚洲大胆艺术图| 国产精品免费看久久久无码| 成年大片免费高清在线看黄| 亚洲人成网站在线观看播放| 98精品全国免费观看视频| 国产精品亚洲自在线播放页码| 国产成人无码区免费A∨视频网站| 香蕉国产在线观看免费| 亚洲日韩图片专区第1页| 四色在线精品免费观看| 国产成人精品免费视频大全| 亚洲综合在线观看视频| 成年人在线免费观看| 一级毛片a女人刺激视频免费| 亚洲av激情无码专区在线播放| 久草在视频免费福利| 污视频网站在线免费看| 亚洲人成在线电影| 少妇亚洲免费精品| 亚洲a一级免费视频| 免费人妻精品一区二区三区|