A-A+
js 字符串长度函数详解介绍
在js中获取字符串长度我们只要使用length属性就可以实现了,下面我详细介绍在js str.length的使用方法,有需要的朋友可参考。
我们只要使用如下代码:
var str = "465464656464566";
var strLength = str.length;
例1,代码如下:
- <script type="text/javascript">
- var vText="I like www.xiariboke.net"
- document.write("<p>" + vText + "</p>")
- document.write(vText.length)
- </script>
Javascript示例代码解释:首先声明一个变量vText,将"I like www.xiariboke.net"赋值给vText,然后用
document.write将其显示出来;然后用length属性,计算得出vText的长度,并将其显示出来,vText里面包含16个字
符,空格也是计算在内的,最后得出结果就是16。如果你写中文,就会得出中文字符的长度。比如你写,"我就喜欢布
啦布啦",就会得到这个字符串的长度,是8。
例2,代码如下:
- <html>
- <body>
- <script type="text/javascript">
- var txt="Hello World!"
- document.write(txt.length)
- </script>
- </body>
- </html>
输 12,利用上面的经验我们写一个字符串截取函数,代码如下:
- <div id='jsdiv' style="border:1px solid #ccc"></div>
- <script type="text/javascript">
- // 得到字符串的真实长度(双字节换算为两个单字节)
- function getStrActualLen(sChars)
- {
- return sChars.replace(/[^x00-xff]/g,"xx").length;
- }
- // 截取固定长度子字符串 sSource为字符串iLen为长度
- function getInterceptedStr(sSource, iLen)
- {
- if(sSource.replace(/[^x00-xff]/g,"xx").length <= iLen)
- {
- return sSource;
- }
- var str = "";
- var l = 0;
- var schar;
- for(var i=0; schar=sSource.charAt(i); i++)
- {
- str += schar;
- l += (schar.match(/[^x00-xff]/) != null ? 2 : 1);
- if(l >= iLen)
- {
- break;
- }
- }
- return str;
- }
- var str1="这是一个字符串截取的函数,this is a test!";
- //alert(getStrActualLen(str1));
- alert(getInterceptedStr(str1,25));
- </script>