js计算字符串长度包含的中文是utf8格式


Posted in Javascript onOctober 15, 2013

方法一:

function byteLength(str) {
 var byteLen = 0, len = str.length;
 if( !str ) return 0;
 for( var i=0; i<len; i++ )
  byteLen += str.charCodeAt(i) > 255 ? 2 : 1;
 return byteLen;
}

说明:byteLength(str)
参数:
string str: 要计算字节长度的字符串(非ASCII的字符算2字节)

方法二:

JS获取字符串实际长度!

今天又添加一个小东西!一个程序员经常要用到的字符串长度检测方法,由于JS原先的长度中文跟英文一样一个字符为1个长度。所以这里就得需要大家自己判断并获取字符串的实际长度了。

function GetLength(str) {
    ///<summary>获得字符串实际长度,中文2,英文1</summary>
    ///<param name="str">要获得长度的字符串</param>
    var realLength = 0, len = str.length, charCode = -1;
    for (var i = 0; i < len; i++) {
        charCode = str.charCodeAt(i);
        if (charCode >= 0 && charCode <= 128) realLength += 1;
        else realLength += 2;
    }
    return realLength;
};  

执行代码:

alert(GetLength('测试测试ceshiceshi));   

方法三: 暂时没有通过测试

function getByteLen(val) { 
var len = 0; 
for (var i = 0; i < val.length; i++) { 
if (val[i].match(/[\u4e00-\u9fa5 ]/ig) != null) 
len += 2; 
else 
len += 1; 
} 
return len; 
}

方法四:

GBK长度计算函数:

// GBK字符集实际长度计算 
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; 
}

UTF8长度计算函数:

// UTF8字符集实际长度计算 
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{  
            // 如果是中文则长度加3 
            realLength += 3; 
        } 
    }  
    return realLength; 
}
Javascript 相关文章推荐
初学prototype,发个JS接受URL参数的代码
Sep 25 Javascript
Add a Table to a Word Document
Jun 15 Javascript
JavaScript浏览器选项卡效果
Aug 25 Javascript
javascript中[]和{}对象使用介绍
Mar 20 Javascript
在Ubuntu上安装最新版本的Node.js
Jul 14 Javascript
Javascript基础教程之定义和调用函数
Jan 18 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
Dec 13 Javascript
Angular的模块化(代码分享)
Dec 26 Javascript
Angularjs上传图片实例详解
Aug 06 Javascript
Vue弹出菜单功能的实现代码
Sep 12 Javascript
JavaScript或jQuery 获取option value值方法解析
May 12 jQuery
vue如何使用模拟的json数据查看效果
Mar 31 Vue.js
Javascript中查找不以XX字符结尾的单词示例代码
Oct 15 #Javascript
通过js获取div的background-image属性
Oct 15 #Javascript
js日期相关函数总结分享
Oct 15 #Javascript
JavaScript的继承的封装介绍
Oct 15 #Javascript
jquery实现兼容浏览器的图片上传本地预览功能
Oct 14 #Javascript
js 距离某一时间点时间是多少实现代码
Oct 14 #Javascript
js算法中的排序、数组去重详细概述
Oct 14 #Javascript
You might like
php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
2010/12/02 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
2017/06/06 PHP
PHP中的输出echo、print、printf、sprintf、print_r和var_dump的示例代码
2020/12/01 PHP
浅谈Javascript嵌套函数及闭包
2010/11/09 Javascript
表单的焦点顺序tabindex和对应enter键提交
2013/01/04 Javascript
jQuery操作元素css样式的三种方法
2014/06/04 Javascript
jquery.gridrotator实现响应式图片展示画廊效果
2015/06/23 Javascript
用javascript实现自动输出网页文本
2015/07/30 Javascript
bootstrap laydate日期组件使用详解
2017/01/04 Javascript
nodejs入门教程一:概念与用法简介
2017/04/24 NodeJs
webpack构建vue项目的详细教程(配置篇)
2017/07/17 Javascript
js插件实现图片滑动验证码
2020/09/29 Javascript
Angular自定义组件实现数据双向数据绑定的实例
2017/12/11 Javascript
Vue.js分页组件实现:diVuePagination的使用详解
2018/01/10 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
element的el-table中记录滚动条位置的示例代码
2019/11/06 Javascript
浅析VUE防抖与节流
2020/11/24 Vue.js
[03:01]完美世界DOTA2联赛PWL S2 集锦第二期
2020/12/03 DOTA
跟老齐学Python之编写类之四再论继承
2014/10/11 Python
python编程开发之类型转换convert实例分析
2015/11/13 Python
Python 遍历列表里面序号和值的方法(三种)
2017/02/17 Python
python 爬虫 批量获取代理ip的实例代码
2018/05/22 Python
python安装requests库的实例代码
2019/06/25 Python
Python实现CAN报文转换工具教程
2020/05/05 Python
html5利用canvas实现颜色容差抠图功能
2019/12/23 HTML / CSS
日本无添加化妆品:HABA
2016/08/18 全球购物
Swisse官方海外旗舰店:澳大利亚销量领先,自然健康品牌
2017/12/15 全球购物
通往英国高街的商店橱窗:Down Your High Street
2020/07/19 全球购物
华为慧通笔试题
2016/04/22 面试题
override和overload的区别
2016/03/09 面试题
EJB的基本架构
2016/09/22 面试题
改进作风怎么办发言材料
2014/08/17 职场文书
新学期红领巾广播稿
2014/10/04 职场文书
教师个人自我评价
2015/03/04 职场文书