js获取字符串实际长度(区分英文和中文),js获取汉字的长度
================================
©Copyright 蕃薯耀 2019年10月22日
http://fanshuyao.iteye.com/
/** * js获取字符串实际长度(区分英文和中文) * 前128个字符就是ASCII码,占用一个字节 * 第33~126号(共94个)是字符,其中第48~57号为0~9十个阿拉伯数字; * 65~90号为26个大写英文字母,97~122号为26个小写英文字母;其余为一些标点符号、运算符号等。 * 128个之后是扩展码(Unicode码),占用2个字节 * Unicode中文汉字编码范围,16进制表示:\u4e00(对应汉字是"一")至\u9fa5(对应汉字是"龥"),对应的十进制:19968至40869 * @param str * @returns */ function getLength(str){ if(str == null || str == undefined || str == ""){ return 0; } var realLength = 0; var charCode = -1; var strLength = str.length; for(var i=0; i<strLength; i++){ charCode = str.charCodeAt(i); if(charCode >=0 && charCode <= 128){ realLength += 1; }else{ realLength += 2; } } return realLength; };
测试代码:
<html> <body> <script type="text/javascript"> function getLength(str){ if(str == null || str == undefined || str == ""){ return 0; } var realLength = 0; var charCode = -1; var strLength = str.length; for(var i=0; i<strLength; i++){ charCode = str.charCodeAt(i); if(charCode >=0 && charCode <= 128){ realLength += 1; }else{ realLength += 2; } } return realLength; }; var a; document.write(getLength(a) + "</br>"); document.write(getLength("") + "</br>"); document.write(getLength("abcde fg") + "</br>"); document.write(getLength("aa我a") + "</br>"); document.write(getLength("我是谁?!") + "</br>"); document.write(getLength("##") + "</br>");//中英文#号 document.write(getLength(" ") + "</br>");//中文空格 </script> </body> </html>
================================
©Copyright 蕃薯耀 2019年10月22日
http://fanshuyao.iteye.com/
相关推荐
这样,替换后的字符串长度减去"aa"的长度之后,就等于原始字符串中英文和标点符号的总数量,而原始字符串中所有中文字符的总数就是字符串长度减去替换后字符串长度后得到的差值。 需要注意的是,这个示例的代码可能...
总的来说,处理中英文混合字符串长度的关键在于理解字符编码的不同,并通过遍历字符串来区分中文字符和英文字符。通过自定义函数或利用现有在线工具,我们可以方便地进行这类计算,满足各种应用场景的需求。了解这些...
本文详细介绍了在JavaScript中获取字符串字节数的方法,包括对英文字母和中文字符的处理。 首先,我们通常使用字符串对象的length属性来获取字符串中字符的数量。这个属性会返回字符串的长度,对于英文字符和标点...
因此,在计算中英文混杂字符串的字节长度时,我们需要区分中文字串和ASCII字符。 为了解决这个问题,我们可以使用Javascript语言来求中英文混杂字符串的字节长度。下面是一个示例代码: ``` function ...
2. `var len = str.length`: 获取字符串的长度,这个长度是基于字符数的,不区分英文和中文。 3. `for (var i = 0; i ; i++)`: 遍历字符串的每一个字符。 4. `charCode = str.charCodeAt(i)`: 获取当前字符的Unicode...
由于JavaScript的字符串长度计算是以单个字符为单位,不区分字符编码,因此需要特别的函数来计算以GBK或UTF8编码的中文字符串的“实际长度”。 GBK字符集通常用于简体中文版的Windows系统和一些中文数据库。GBK编码...
基于这一特点,我们可以编写一个判断字符串长度的函数,并且区分中文字符和英文数字字符。 根据给定文件中的核心函数,我们可以看到以下的JavaScript代码: ```javascript var zfl = {}; zfl.GetLength = function...
这个函数考虑到了字符编码的情况,它能够区分中文汉字和英文及数字字符。中文汉字通常占用两个字节的空间,而英文及数字通常占用一个字节的空间。`getByteLen`函数通过遍历输入字符串中的每一个字符,使用正则表达式...
计算包含中文字符的字符串长度的方法一 ```javascript function length(str) { var len = 0; for (var i = 0; i ; i++) { if (str.charAt(i) > '~') { // ASCII码表中,'~'之后为非半角字符 len += 2; // 非...
字符串对象中包含多种方法,可以用来获取字符串的长度,为字符串添加各种样式,获取字符串中特定内容的首次出现位置,以及进行字符串内容的替换等操作。以下是根据给定文件内容整理的详细知识点: 1. 获取字符串的...
注意,这种方法适用于字符串长度适中的情况。如果字符串非常大,可能会有性能上的考虑,这时可能需要寻找其他更优化的算法。此外,这种方法不区分大小写,如果需要区分大小写,可以省略正则表达式构造时的转义和连接...
之后,通过获取转换后的字符串长度来判断其是否符合长度要求。 在`validators`对象中定义了一个`length`方法,该方法接收`min`和`max`参数,用于指定长度范围。`length`方法返回一个新的函数,该函数接收校验规则...
在JavaScript编程中,控制输入中英文字符数是一项常见的需求,特别是在网页表单或者文本输入框中。这样的功能有助于保持用户输入的...同时,它也展示了JavaScript事件处理、字符串操作和正则表达式等基础概念的应用。
通过理解并运用`indexOf`和`replace`方法,我们可以轻松地实现提取特殊字符串长度的功能,这在实际开发中有着广泛的应用。无论是简单的文本处理还是复杂的文本分析,这样的工具都是必不可少的。
如果填充的字符长度加上原字符串长度仍然小于目标宽度,则继续追加字符;反之,则截取相应长度的字符追加在原字符串前。`padRight` 方法逻辑相似,但它是在字符串的右侧进行填充。 接着是三个修剪字符串的方法。`...
74、原生JavaScript判断字符串是为网址不区分大小写">1、原生JavaScript实现字符串长度截取 2、原生JavaScript获取域名主机 3、原生JavaScript清除空格 4、原生JavaScript替换全部 11、原生JavaScript加入收藏夹 15...
// 获取替换前的字符串长度 reg = new RegExp(strArr[i], "ig"); // 创建正则表达式,用于全局(i)和不区分大小写(g)匹配 str = str.replace(reg, ""); // 使用正则表达式替换字符 afterLength = str.length;...
这在很多应用场景中非常实用,比如表单验证时限制用户输入的字符数量,特别是当需要区分英文和中文字符的长度时。 ### 二、中文字符与字节数计算原理 #### 2.1 字符编码 计算机内部是以二进制形式存储数据的,不同...
需要注意的是,索引超出字符串长度会导致异常。同样,`#strings.substringAfter()`和`#strings.substringBefore()`可以在字符串中找到特定字符并截取其后的或其前的子串。 以上就是`#strings`对象在Thymeleaf中处理...
在函数中,我们通过遍历字符串中的每一个字符,并使用`charCodeAt`方法来获取该字符的Unicode编码值,从而区分中英文字符。 在`fucCheckLength`函数中,我们设置了一个循环,通过遍历字符串中的每个字符来计算长度...