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 相关文章推荐
JS是否可以跨文件同时控制多个iframe页面的应用技巧
Dec 16 Javascript
JS 分号引起的一段调试问题
Jun 18 Javascript
Javascript 匿名函数及其代码模式原理
Mar 19 Javascript
基于jquery的大众点评,分类导航实现代码
Aug 23 Javascript
jQuery中end()方法用法实例
Jan 08 Javascript
jQuery实现dialog设置focus焦点的方法
Jun 10 Javascript
简介JavaScript中setUTCSeconds()方法的使用
Jun 12 Javascript
JS实现网页顶部向下滑出的全国城市切换导航效果
Aug 22 Javascript
jQuery实现二维码扫描功能
Jan 09 Javascript
JavaScript如何一次性展示几万条数据
Mar 30 Javascript
Vue搭建后台系统需要注意的问题
Nov 08 Javascript
原生js+ajax分页组件
Jan 30 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代码优化之成员变量获取速度对比
2014/02/28 PHP
php生成zip文件类实例
2015/04/07 PHP
PHP实现清除wordpress里恶意代码
2015/10/21 PHP
ThinkPHP使用Smarty第三方插件方法小结
2016/03/19 PHP
PHP实现通过URL提取根域名
2016/03/31 PHP
php处理复杂xml数据示例
2016/07/11 PHP
web前端开发也需要日志
2010/12/09 Javascript
javascript中的if语句使用介绍
2013/11/20 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
2015/03/10 Javascript
$.extend 的一个小问题
2015/06/18 Javascript
JS实现获取剪贴板内容的方法
2016/06/21 Javascript
js 声明数组和向数组中添加对象变量的简单实例
2016/07/28 Javascript
javascript使用 concat 方法对数组进行合并的方法
2016/09/08 Javascript
微信小程序(应用号)开发新闻客户端实例
2016/10/24 Javascript
Vue cli 引入第三方JS和CSS的常用方法分享
2018/01/20 Javascript
浅谈Vue2.0中v-for迭代语法的变化(key、index)
2018/03/06 Javascript
微信小程序自定义tab实现多层tab嵌套功能
2018/06/15 Javascript
JS实现获取进今年第几天是周几的方法分析
2018/06/27 Javascript
vue实现百度下拉列表交互操作示例
2019/03/12 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
2019/09/02 Javascript
vue - vue.config.js中devServer配置方式
2019/10/30 Javascript
小程序实现tab标签页
2020/11/16 Javascript
Python简单日志处理类分享
2015/02/14 Python
python中利用Future对象回调别的函数示例代码
2017/09/07 Python
python3 实现口罩抽签的功能
2020/03/11 Python
PyQt5 界面显示无响应的实现
2020/03/26 Python
Python的PIL库中getpixel方法的使用
2020/04/09 Python
python利用platform模块获取系统信息
2020/10/09 Python
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
高校毕业生自我鉴定
2013/10/27 职场文书
平面设计求职信
2014/03/10 职场文书
环保倡议书格式范文
2014/05/14 职场文书
投资意向协议书
2015/01/29 职场文书
事业单位年度考核个人总结
2015/02/12 职场文书
酒店辞职信怎么写
2015/02/27 职场文书
如何利用JavaScript实现二叉搜索树
2021/04/02 Javascript