JS字符串与汉字的字节获取

JS英文为一个字节,中文GBK为3个字节,UTF-8为2个字节。

1.通过for循环

function getStrLeng(str){
    var realLength = 0;
    var len = str.length;
    var charCode = -1;
    for(var i = 0; i < len; i++){
        charCode = str.charCodeAt(i);
        if (charCode >= 0 && charCode <= 128) {
            realLength += 1;
        }else{
            // 如果是中文则长度加2
            realLength += 2;
        }
    }
    return realLength;
}

2.通过正则表达式

var lenReg = function(str){

    return str.replace(/[^\x00-\xFF]/g,‘**‘).length;

}

  

时间: 2024-12-17 04:04:56

JS字符串与汉字的字节获取的相关文章

js字符串长度计算(一个汉字==两个字符)和字符串截取

js字符串长度计算(一个汉字==两个字符)和字符串截取 String.prototype.realLength = function() { return this.replace(/[^\x00-\xff]/g, "**").length; // [^\x00-\xff] - 匹配非双字节的字符 }; String.prototype.realSubstring = function(n){ var str = this||''; if(this.realLength()<=n

根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期

根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>. 蕃薯耀 2016年12月30日 08:47:38 星期五 http://www.cnblogs.com/fanshuyao/ /** * 根据日期字符串获取星期几 *

.net core 通过PinYinConverterCore实现汉字转拼音,获取中文字符串首字母

目录 一.事故现场 二.解决方法 一.事故现场 项目之前使用的.net framework,可以通过引用 Microsoft.International.Converters.PinYinConverter 类库.来实现汉字转拼音. 现在项目移植到.net core,之前的类库已不能使用. 二.解决方法 使用PinYinConverterCore包来实现汉字转拼音. 1.安装方法 Nuget Install-Package PinYinConverterCore .NET CLI dotnet

获取整条字符串所有汉字拼音首字母的函数

不错的函数 拿来用用 function pinyin_long($zh){ //获取整条字符串所有汉字拼音首字母 $zh=gainChinese($zh,100);//提取中文 $ret = ""; $s1 = iconv("UTF-8","gb2312", $zh); $s2 = iconv("gb2312","UTF-8", $s1); if($s2 == $zh){$zh = $s1;} for($i

js根据url查询字符串里的键名获取其值

先来运行结果 下面是页面代码 testJsGetUrlAttribute.html <script> var rout = getUrlAttribute('rout'); if(null!=rout) { alert(rout); } /** * 20150514 14:30 * 作者:Ro * 根据url查询字符串里的键名获取其值 */ function getUrlAttribute(parameName) { //location.search是从当前URL的?号开始的字符串,即查询字

0003.js字符串操作

通过 + 连接符拼接字符串: var str1 = "hello"; str1 = str1 + " javaScript"; document.write(str1); 或者: var str1 = "hello"; str1 += " javaScript"; document.write(str1); 输出:hello javaScript 要在字符串中添加换行符,需要使用转义字符"\n",但这种方法

UTF-8编码的字符串拆分成单字、获取UTF-8字符串的字符个数的代码及原理

一.字符编码简介 1. ASCII码 在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte).也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111.上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定.这被称为ASCII码,一直沿用至今.ASCII码一共规定了128个字符的

字符串、字符、字节以及bit位小结与疑问

字符串是由一个个字符组成的,每个字符又有一个或多个字节来表示,每个字节又由8个bit位来表示 在C#里 字符串通常由string来声明,字符由char来声明,字节由byte来表示,位由bit来表示,具体分析见下面的测试代码分析: 完整测试代码: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Linq.Expressions; 5 using System.Text;

JS 字符串的操作

JS字符串操作还是很频繁,如果同正则表达式结合起来,功能非常强大. 1.test    验证字符串是否符合正则表达式. /\s+/.test(" i'm you"); //true 它只会返回true和false; 2.Match    字符串内检索指定的值,或找到一个或多个正则表达式的匹配. 匹配到值返回一个数组,否则返回为null. 2.1 match的使用与正则表达式的g标志有很大的关系,如果正则中没有g,那么第 0 个元素存放的是匹配文本, 还含有两个对象属性.index 属性