JS判断字符串长度的5个方法(区分中文和英文)


Posted in Javascript onMarch 18, 2014

目的:计算字符串长度(英文占1个字符,中文汉字占2个字符)

方法一:

String.prototype.gblen = function() {  
  var len = 0;  
  for (var i=0; i<this.length; i++) {  
    if (this.charCodeAt(i)>127 || this.charCodeAt(i)==94) {  
       len += 2;  
     } else {  
       len ++;  
     }  
   }  
  return len;  
}

方法二:
function strlen(str){
    var len = 0;
    for (var i=0; i<str.length; i++) { 
     var c = str.charCodeAt(i); 
    //单字节加1 
     if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)) { 
       len++; 
     } 
     else { 
      len+=2; 
     } 
    } 
    return len;
}

方法三:
var jmz = {};
jmz.GetLength = function(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;
};

方法四:
var l = str.length; 
var blen = 0; 
for(i=0; i<l; i++) { 
if ((str.charCodeAt(i) & 0xff00) != 0) { 
blen ++; 
} 
blen ++; 
}

方法五:
把双字节的替换成两个单字节的然后再获得长度
getBLen = function(str) {
  if (str == null) return 0;
  if (typeof str != "string"){
    str += "";
  }
  return str.replace(/[^\x00-\xff]/g,"01").length;
}
Javascript 相关文章推荐
javaScript parseInt字符转化为数字函数使用小结
Nov 05 Javascript
jquery获取ASP.NET服务器端控件dropdownlist和radiobuttonlist生成客户端HTML标签后的value和text值
Jun 28 Javascript
jQuery学习笔记之DOM对象和jQuery对象
Dec 22 Javascript
JQuery中使用ajax传输超大数据的解决方法
Jul 14 Javascript
JS来动态的修改url实现对url的增删查改
Sep 05 Javascript
AngularJS在IE8的不支持的解决方法
May 13 Javascript
jQuery中show与hide方法用法示例
Sep 16 Javascript
BootStrap Table复选框默认选中功能的实现代码(从数据库获取到对应的状态进行判断是否为选中状态)
Jul 11 Javascript
10 种最常见的 Javascript 错误(频率最高)
Feb 08 Javascript
vue下载excel的实现代码后台用post方法
May 10 Javascript
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
Jul 10 jQuery
Vue路由守卫之路由独享守卫
Sep 25 Javascript
file控件选择上传文件确定后触发的js事件是哪个
Mar 17 #Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
Mar 17 #Javascript
javascript读取Xml文件做一个二级联动菜单示例
Mar 17 #Javascript
javascript的解析执行顺序在各个浏览器中的不同
Mar 17 #Javascript
jquery禁用右键单击功能屏蔽F5刷新
Mar 17 #Javascript
jquery自动将form表单封装成json的具体实现
Mar 17 #Javascript
获取当前点击按钮的id用this.id实现
Mar 17 #Javascript
You might like
用PHP和ACCESS写聊天室(七)
2006/10/09 PHP
PHP执行zip与rar解压缩方法实现代码
2010/12/05 PHP
解析php 版获取重定向后的地址(代码)
2013/06/26 PHP
php通过sort()函数给数组排序的方法
2015/03/18 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
2019/10/11 PHP
Firefox div高度自适应
2009/04/28 Javascript
jquery判断checkbox(复选框)是否被选中的代码
2010/10/20 Javascript
用jquery方法操作radio使其默认选项是否
2013/09/10 Javascript
js中关于一个分号的崩溃示例
2013/11/11 Javascript
javascript操作table(insertRow,deleteRow,insertCell,deleteCell方法详解)
2013/12/16 Javascript
js实现遮罩层弹出框的方法
2015/01/15 Javascript
2则自己编写的jQuery特效分享
2015/02/26 Javascript
JS+CSS实现淡入式焦点图片幻灯切换效果的方法
2015/02/26 Javascript
微信小程序实现顶部选项卡(swiper)
2020/06/19 Javascript
通过javascript实现段落的收缩与展开
2019/06/26 Javascript
原生js实现下拉选项卡
2019/11/27 Javascript
在vue中通过render函数给子组件设置ref操作
2020/11/17 Vue.js
Python中lambda的用法及其与def的区别解析
2014/07/28 Python
使用python客户端访问impala的操作方式
2020/03/28 Python
Python正则表达式如何匹配中文
2020/05/27 Python
python文件路径操作方法总结
2020/12/21 Python
卡西欧B级产品官方网站:Casio Outlet
2018/05/22 全球购物
AT&T Wireless:手机、无限数据计划和配件
2018/06/03 全球购物
英国名牌男装店:Standout
2021/02/17 全球购物
优质的学校老师推荐信
2013/10/28 职场文书
房屋改造计划书
2014/01/10 职场文书
如何写好优秀的创业计划书
2014/01/30 职场文书
现金出纳岗位职责
2014/03/15 职场文书
工地安全生产标语
2014/06/06 职场文书
小学生读书活动总结
2014/06/30 职场文书
2014年酒店工作总结与计划
2014/11/17 职场文书
企业财务管理制度范本
2015/08/04 职场文书
Golang 实现超大文件读取的两种方法
2021/04/27 Golang
python+pytest接口自动化之token关联登录的实现
2022/04/06 Python
Python 中面向接口编程
2022/05/20 Python
码云(gitee)通过git自动同步到阿里云服务器
2022/12/24 Servers