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 相关文章推荐
基于jquery的给文章加入关键字链接
Oct 26 Javascript
一样的table?不一样的table(可编辑状态table)
Sep 19 Javascript
node.js中的fs.write方法使用说明
Dec 15 Javascript
jquery实现表格本地排序的方法
Mar 11 Javascript
url中的特殊符号有什么含义(推荐)
Jun 17 Javascript
jQuery 实现ajax传入参数含有特殊字符的方法总结
Oct 17 Javascript
BootStrap表单控件之文本域textarea
May 23 Javascript
jquery实现下拉菜单的手风琴效果
Jul 23 jQuery
jQuery 利用ztree实现树形表格的实例代码
Sep 27 jQuery
vue-cli + sass 的正确打开方式图文详解
Oct 27 Javascript
vue router-link传参以及参数的使用实例
Nov 10 Javascript
vue-router beforeEach跳转路由验证用户登录状态
Dec 26 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
php self,$this,const,static,-&amp;gt;的使用
2009/10/22 PHP
ThinkPHP框架分布式数据库连接方法详解
2017/03/14 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
2017/06/27 PHP
什么是PHP7中的孤儿进程与僵尸进程
2019/04/14 PHP
PHP创建对象的六种方式实例总结
2019/06/27 PHP
JQuery从头学起第二讲
2010/07/04 Javascript
idTabs基于JQuery的根据URL参数选择Tab插件
2012/04/11 Javascript
js data日期初始化的5种方法
2013/12/29 Javascript
判断浏览器的内核及版本号方法汇总
2015/01/05 Javascript
javascript中Array数组的迭代方法实例分析
2015/02/04 Javascript
jQuery实现的fixedMenu下拉菜单效果代码
2015/08/24 Javascript
jquery实现美观的导航菜单鼠标提示特效代码
2015/09/06 Javascript
分享有关jQuery中animate、slide、fade等动画的连续触发、滞后反复执行的bug
2016/01/10 Javascript
JavaScript实现横线提示输入验证码随输入验证码输入消失的方法
2016/09/24 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
Vue.js学习之过滤器详解
2017/01/22 Javascript
Webpack打包css后z-index被重新计算的解决方法
2017/06/18 Javascript
详解Node.js access_token的获取、存储及更新
2017/06/20 Javascript
13 个npm 快速开发技巧(推荐)
2019/07/04 Javascript
[05:05]DOTA2亚洲邀请赛 战队出场仪式
2015/02/07 DOTA
[37:29]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.19
2020/11/19 DOTA
python编程开发之类型转换convert实例分析
2015/11/13 Python
python Django批量导入数据
2016/03/25 Python
Python3 中文文件读写方法
2018/01/23 Python
Pytorch反向求导更新网络参数的方法
2019/08/17 Python
使用Python实现分别输出每个数组
2019/12/06 Python
python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式
2020/05/16 Python
Django用内置方法实现简单搜索功能的方法
2020/12/18 Python
爱淘宝:淘宝网购物分享平台
2017/04/28 全球购物
DC Shoes澳大利亚官方网上商店:购买DC鞋子
2019/10/25 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
网络维护管理员的自我评价分享
2013/11/11 职场文书
给校长的建议书
2014/03/12 职场文书
水毁工程实施方案
2014/04/01 职场文书
大气污染防治方案
2014/05/19 职场文书
北京离婚协议书范文2014
2014/09/29 职场文书