JS获取字符串实际长度(包含汉字)的简单方法


Posted in Javascript onAugust 11, 2016

方法一:

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;
};

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

方法二(更简洁的方法):

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

方法三(更更简洁的方法):

var jmz = {};
jmz.GetLength = function(str) {
  return str.replace(/[\u0391-\uFFE5]/g,"aa").length;  //先把中文替换成两个字节的英文,在计算长度
};  
alert(jmz.GetLength('测试测试ceshiceshi'));

以上这篇JS获取字符串实际长度(包含汉字)的简单方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS验证身份证有效性示例
Oct 11 Javascript
jQuery实现的类似淘宝网站搜索框样式代码分享
Aug 24 Javascript
Vue.js常用指令的使用小结
Jun 23 Javascript
基于node.js制作简单爬虫教程
Jun 29 Javascript
Vue.js实现列表清单的操作方法
Nov 15 Javascript
详解使用VueJS开发项目中的兼容问题
Aug 02 Javascript
使用mpvue搭建一个初始小程序及项目配置方法
Dec 03 Javascript
jQuery实现图片随机切换、抽奖功能(实例代码)
Oct 23 jQuery
浅谈Vue组件单元测试究竟测试什么
Feb 05 Javascript
ES6 async、await的基本使用方法示例
Jun 06 Javascript
nuxt静态部署打包相对路径操作
Nov 06 Javascript
html5调用摄像头截图功能
Jan 18 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
Aug 11 #Javascript
JavaScript性能优化总结之加载与执行
Aug 11 #Javascript
js接收并转化Java中的数组对象的方法
Aug 11 #Javascript
Js调用Java方法并互相传参的简单实例
Aug 11 #Javascript
JS中的hasOwnProperty()、propertyIsEnumerable()和isPrototypeOf()
Aug 11 #Javascript
基于js对象,操作属性、方法详解
Aug 11 #Javascript
JS中的hasOwnProperty()和isPrototypeOf()属性实例详解
Aug 11 #Javascript
You might like
Bo-Blog专用的给Windows服务器的IIS Rewrite程序
2007/08/26 PHP
PHP依赖倒置(Dependency Injection)代码实例
2014/10/11 PHP
为什么要在引入的css或者js文件后面加参数的详细讲解
2013/05/03 Javascript
21个值得收藏的Javascript技巧
2014/02/04 Javascript
Javascript 函数parseInt()转换时出现bug问题
2014/05/20 Javascript
jQuery插件开发详细教程
2014/06/06 Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
2014/06/10 Javascript
Nodejs实现批量下载妹纸图
2015/05/28 NodeJs
Vue.js 2.0 移动端拍照压缩图片上传预览功能
2017/03/06 Javascript
seajs中模块依赖的加载处理实例分析
2017/10/10 Javascript
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
form表单数据封装成json格式并提交给服务器的实现方法
2017/12/14 Javascript
JS实现网站楼层导航效果代码实例
2020/06/16 Javascript
原生JS实现记忆翻牌游戏
2020/07/31 Javascript
Vue利用localStorage本地缓存使页面刷新验证码不清零功能的实现
2020/09/04 Javascript
Python 专题六 局部变量、全局变量global、导入模块变量
2017/03/20 Python
在PyCharm环境中使用Jupyter Notebook的两种方法总结
2018/05/24 Python
mac安装pytorch及系统的numpy更新方法
2018/07/26 Python
使用python opencv对目录下图片进行去重的方法
2019/01/12 Python
在Python中过滤Windows文件名中的非法字符方法
2019/06/10 Python
python中自带的三个装饰器的实现
2019/11/08 Python
python 中的paramiko模块简介及安装过程
2020/02/29 Python
浅谈Python中的字符串
2020/06/10 Python
将tf.batch_matmul替换成tf.matmul的实现
2020/06/18 Python
草莓网化妆品日本站:Strawberrynet日本
2017/10/20 全球购物
size?瑞典:英国伦敦的球鞋精品店
2018/03/01 全球购物
为什么要做架构设计
2015/07/08 面试题
车间班组长岗位职责
2013/11/13 职场文书
运动会入场词100字
2014/02/06 职场文书
师德师风自我剖析材料
2014/09/27 职场文书
工作作风整顿个人剖析材料
2014/10/11 职场文书
单位同意报考证明
2015/06/17 职场文书
2015年迎新晚会策划书
2015/07/16 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
2022/03/23 MySQL
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python