Ⅰ js获取一个字符串的字节长度
因为中文字占两个字节,英文占一个字节。
方法1:把中文字替换成两个字母。然后计算长度。
方法2:直接判断中文,长度+2。
运用的方法大同小异。都是通过正则表达式,写unicode编码。
方法1中
[\u4e00-\u9fa5]:匹配中文字符
[^\x0000-\x00ff]:匹配双字节字符(包括中文字)
正则表达示 /[\u4e00-\u9fa5]/g 的 g 必须要,global,全部都要检查的意思。没有的话输出的是(2333aa哈)
方法2中的函数
扩展:
Ⅱ JS获取字符串长度的问题!~
你这态度不太好,人家 303392049 给你回答问题,不管对不对 都不应该这样说。专。
字符串里面应该是属html源代码
比如: $context="你好<br/>大家好<br/>全都好";
简单获取字符串用 $context.length
如果1个中文字算两个字符的话用下面的函数 getLength($context);
function getLength(str){
var len=str.length;
var reLen=0;
for(var i=0;i<len;i++){
if(str.charCodeAt(i)<27 || str.charCodeAt(i)>126){
reLen +=2;
}else{
reLen ++;
}
}
return reLen;
}
Ⅲ js获取一个字符串中字母的个数
JS获取字符串字母个数,方法是:使用属性“.length”。
详细的操作步骤如下:
1、首先,创建一个新的HTML文档并创建一个<script>标签,如下图所示。
Ⅳ js中一个字符串不知道多长,怎么可以得到它从第三位开始后面所有的字符
js获取一个字符串最后的一个字符,可以参考 如下方法 :
方法一:运用String对象下的charAt方法
charAt() 方法可返回指定位置的字符。
str.charAt(str.length – 1)
请注意,javaScript 并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为 1 的字符串
方法二:运用String对象下的substr方法
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
str.substr(str.length-1,1)
重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它。
重要事项:在 IE 4 中,参数 start 的值无效。在这个 BUG 中,start 规定的是第 0 个字符的位置。()在之后的版本中,此 BUG 已被修正。
方法三:运用String对象下的split方法
split() 方法用于把一个字符串分割成字符串数组。
var str = “123456″;
spstr = str.split(“”);
spstr[spstr.length-1];
方法四:正则搞定
<script type="text/javascript">
//<![CDATA[
var s = "nasofj;n234n41;v";
alert("String: "+s+"nn"+"LastOne: "+s.replace(/^(.*[n])*.*(.|n)$/g, "$2"));
//]]>
</script>
Ⅳ js取字符串长度
如果其中有英文、数字、符号等,用楼上的 alert("1sS#符".length) 方法是极度不准确的。其结果为回 5
alert(len("1sS#符")) //英文、数字、答符号均为一个字节,汉字为两个。 因此结果为 6
function len(s) {
var l = 0;
var a = s.split("");
for (var i=0;i<a.length;i++) {
if (a[i].charCodeAt(0)<299) {
l++;
} else {
l+=2;
}
}
return l;
}