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表格翻页效果实现思路及代码
Aug 23 Javascript
jquery实现checkbox 全选/全不选的通用写法
Feb 22 Javascript
原生javascript实现图片按钮切换
Jan 12 Javascript
JS基于cookie实现来宾统计记录访客信息的方法
Aug 04 Javascript
跟我学习javascript的异步脚本加载
Nov 20 Javascript
connection reset by peer问题总结及解决方案
Oct 21 Javascript
如何提高Dom访问速度
Jan 05 Javascript
jQuery 控制文本框自动缩小字体填充
Jun 16 jQuery
通过jquery获取上传文件名称、类型和大小的实现代码
Apr 19 jQuery
node.js实现微信开发之获取用户授权
Mar 18 Javascript
vue无限轮播插件代码实例
May 10 Javascript
使用vue判断当前环境是安卓还是IOS
Apr 12 Vue.js
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
模板引擎正则表达式调试小技巧
2011/07/20 PHP
PHP常见错误提示含义解释(实用!值得收藏)
2016/04/25 PHP
php实例化一个类的具体方法
2019/09/19 PHP
php使用goto实现自动重启swoole、reactphp、workerman服务的代码
2020/04/13 PHP
图片在浏览器中底部对齐 解决方法之一
2011/11/30 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
转换字符串为json对象的方法详解
2013/11/29 Javascript
深入分析Cookie的安全性问题
2015/03/01 Javascript
javascript模拟命名空间
2015/04/17 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
2016/11/01 Javascript
JavaScript、C# URL编码、解码总结
2017/01/21 Javascript
Canvas实现动态的雪花效果
2017/02/13 Javascript
angularjs中回车键触发某一事件的方法
2017/04/24 Javascript
Nodejs让异步变成同步的方法
2019/03/02 NodeJs
JS异步处理的进化史深入讲解
2019/08/25 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
2021/01/20 Vue.js
Python中获取网页状态码的两个方法
2014/11/03 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
2018/01/04 Python
分数霸榜! python助你微信跳一跳拿高分
2018/01/08 Python
Python功能点实现:函数级/代码块级计时器
2019/01/02 Python
python如何获取当前文件夹下所有文件名详解
2019/01/25 Python
Django使用Channels实现WebSocket的方法
2019/07/28 Python
python3.8 微信发送服务器监控报警消息代码实现
2019/11/05 Python
Python类及获取对象属性方法解析
2020/06/15 Python
纯CSS3制作的简洁蓝白风格的登录模板(非IE效果更好)
2013/08/11 HTML / CSS
销售人员求职的自我评价分享
2014/03/15 职场文书
安全生产月演讲稿
2014/05/09 职场文书
项目合作意向书模板
2014/07/29 职场文书
2014领导班子四风剖析对照检查材料思想汇报
2014/09/20 职场文书
2014年助理政工师工作总结
2014/12/19 职场文书
财务经理岗位职责
2015/01/31 职场文书
2015年安全员工作总结范文
2015/04/22 职场文书
政协工作总结2015
2015/05/20 职场文书
Python实战之大鱼吃小鱼游戏的实现
2022/04/01 Python
java开发双人五子棋游戏
2022/05/06 Java/Android