A-A+

js 字符串长度函数详解介绍

2016年10月15日 前端设计 暂无评论 阅读 5 views 次

在js中获取字符串长度我们只要使用length属性就可以实现了,下面我详细介绍在js str.length的使用方法,有需要的朋友可参考。

我们只要使用如下代码:

var str = "465464656464566";

var strLength = str.length;

例1,代码如下:

  1. <script type="text/javascript">  
  2. var vText="I like www.xiariboke.net"  
  3. document.write("<p>" + vText + "</p>")  
  4. document.write(vText.length)  
  5. </script>  

Javascript示例代码解释:首先声明一个变量vText,将"I like www.xiariboke.net"赋值给vText,然后用
document.write将其显示出来;然后用length属性,计算得出vText的长度,并将其显示出来,vText里面包含16个字
符,空格也是计算在内的,最后得出结果就是16。如果你写中文,就会得出中文字符的长度。比如你写,"我就喜欢布
啦布啦",就会得到这个字符串的长度,是8。

例2,代码如下:

  1. <html>  
  2. <body>  
  3. <script type="text/javascript">  
  4. var txt="Hello World!"  
  5. document.write(txt.length)  
  6. </script>  
  7. </body>  
  8. </html>  

输 12,利用上面的经验我们写一个字符串截取函数,代码如下:

  1. <div id='jsdiv' style="border:1px solid #ccc"></div>    
  2. <script type="text/javascript">    
  3. // 得到字符串的真实长度(双字节换算为两个单字节)    
  4. function getStrActualLen(sChars)    
  5. {    
  6.     return sChars.replace(/[^x00-xff]/g,"xx").length;    
  7. }   
  8. // 截取固定长度子字符串 sSource为字符串iLen为长度    
  9. function getInterceptedStr(sSource, iLen)    
  10. {    
  11.     if(sSource.replace(/[^x00-xff]/g,"xx").length <= iLen)    
  12.     {    
  13.         return sSource;    
  14.     }   
  15.     var str = "";    
  16.     var l = 0;    
  17.     var schar;    
  18.     for(var i=0; schar=sSource.charAt(i); i++)    
  19.     {    
  20.         str += schar;    
  21.         l += (schar.match(/[^x00-xff]/) != null ? 2 : 1);    
  22.         if(l >= iLen)    
  23.         {    
  24.             break;    
  25.         }    
  26.     }   
  27.     return str;    
  28. }    
  29. var str1="这是一个字符串截取的函数,this is a test!";    
  30. //alert(getStrActualLen(str1));    
  31. alert(getInterceptedStr(str1,25));    
  32. </script>   
标签:

给我留言