js获取字符串字节数方法小结


Posted in Javascript onJune 09, 2015

本文实例讲述了js获取字符串字节数的方法。分享给大家供大家参考。具体如下:

大家都知道,获取字符串的长度可用length来获取,
那么获取这段字符串的字节数呢?

英文字母肯定lenght和字节数都一样:都是1
而中文lenght=1,字节数=2
因此,需要作的就是把中文字符的字节数计算出来。

方法一:

alert('a'.replace(/[^\u0000-\u00ff]/g,"aaa").length); 
//原理:把中文字符替换成2个英文字母,那么字节数就是2,
//示例中改成替换成3个英文字母了。
//因此弹出的字节数是3,如果要正确的,当然是替换成2个字母了
//\u0000这个表示的是unicode编码

方法二:

var str='我我我';
var bytesCount;
for (var i = 0; i < str.length; i++)
{
  var c = str.charAt(i);
  if (/^[\u0000-\u00ff]$/.test(c)) //匹配双字节
  {
  bytesCount += 1;
  }
  else
  {
  bytesCount += 2;
  }
}
alert(bytesCount);
//结果是6
//原理也很简单,用正则判断是不是中文,如果是的话,字节数就加1。

匹配中文字符的正则表达式: [\u4e00-\u9fa5]

匹配双字节字符(包括汉字在内):[^\x0000-\x00ff]

可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

JS中的几个函数:

charAt(num) //获取字符串的num位置的字符
charCodeAt(num)//获取字符串的num位置的字符的unicode编码 
fromCharCode(num)//获取unicode编码对应的字符

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript GUID生成器实现代码
Oct 31 Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
Jul 25 Javascript
JavaScript如何从listbox里同时删除多个项目
Oct 12 Javascript
Highcharts学习之数据列
Aug 03 Javascript
使用js获取伪元素的content实例
Oct 24 Javascript
解决vue+webpack打包路径的问题
Mar 06 Javascript
JS实现用特殊符号替换字符串的中间部分区域的实例代码
Jul 24 Javascript
Vue+Typescript中在Vue上挂载axios使用时报错问题
Aug 07 Javascript
JavaScript基于面向对象实现的无缝滚动轮播示例
Jan 17 Javascript
vue 弹出遮罩层样式实例
Jul 22 Javascript
js前端传json后台接收‘‘被转为quot的问题解决
Nov 12 Javascript
Taro小程序自定义顶部导航栏功能的实现
Dec 17 Javascript
Javascript对象Clone实例分析
Jun 09 #Javascript
JS动态创建DOM元素的方法
Jun 09 #Javascript
JavaScript获取数组最小值和最大值的方法
Jun 09 #Javascript
JavaScript获取两个数组交集的方法
Jun 09 #Javascript
JavaScript实现函数返回多个值的方法
Jun 09 #Javascript
JavaScript中的getDay()方法使用详解
Jun 09 #Javascript
JavaScript中用getDate()方法返回指定日期的教程
Jun 09 #Javascript
You might like
destoon会员注册提示“数据校验失败(2)”解决方法
2014/06/21 PHP
ThinkPHP实现一键清除缓存方法
2014/06/26 PHP
laravel框架模型、视图与控制器简单操作示例
2019/10/10 PHP
sina的lightbox效果。
2007/01/09 Javascript
javascript 对象比较实现代码
2009/04/27 Javascript
jquery 常用操作方法
2010/01/28 Javascript
仿jQuery的siblings效果的js代码
2011/08/09 Javascript
javascript中数组的多种定义方法和常用函数简介
2014/05/09 Javascript
jquery提示效果实例分析
2014/11/25 Javascript
如何在 JavaScript 中更好地利用数组
2018/09/27 Javascript
详解js访问对象的属性和方法
2018/10/25 Javascript
爬虫利器Puppeteer实战
2019/01/09 Javascript
vue移动端城市三级联动组件使用详解
2019/07/26 Javascript
vue实现输入框自动跳转功能
2020/05/20 Javascript
vscode中Vue别名路径提示的实现
2020/07/31 Javascript
基于JS实现快速读取TXT文件
2020/08/25 Javascript
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
python正则表达式判断字符串是否是全部小写示例
2013/12/25 Python
Python的Django框架中模板碎片缓存简介
2015/07/24 Python
Python+request+unittest实现接口测试框架集成实例
2018/03/16 Python
pycharm 将django中多个app放到同个文件夹apps的处理方法
2018/05/30 Python
python中datetime模块中strftime/strptime函数的使用
2018/07/03 Python
解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题
2019/07/15 Python
使用Python和OpenCV检测图像中的物体并将物体裁剪下来
2019/10/30 Python
复化梯形求积分实例——用Python进行数值计算
2019/11/20 Python
python能自学吗
2020/06/18 Python
Python数据可视化实现多种图例代码详解
2020/07/14 Python
Python用来做Web开发的优势有哪些
2020/08/05 Python
各大浏览器 CSS3 和 HTML5 兼容速查表 图文
2010/04/01 HTML / CSS
印尼网上商店:Alfacart.com
2019/03/11 全球购物
个人简历自我评价
2014/02/02 职场文书
最美孝心少年事迹材料
2014/08/15 职场文书
同志主要表现材料
2014/08/21 职场文书
重阳节活动主持词
2015/07/04 职场文书
使用numpy实现矩阵的翻转(flip)与旋转
2021/06/03 Python
手把手带你彻底卸载MySQL数据库
2022/06/14 MySQL