zoukankan      html  css  js  c++  java
  • js检测字符串的字节数

    在js中字符串可以存放数字,字母或者汉字,但是又一个问题就是,数字和字母都是占一个字节,而一个汉字占2个字节。如果在一个字符串中既有字母又有汉字怎么判断字节数呢

    第一种简单粗暴

    var str = '我们ss'
    alert(str.replace(/[^u0000-u00ff]/g,"aa").length);
    /[^u0000-u00ff]/g 这个正则表达式是用于比配汉字用的,如果是汉字就替换成 aa ,这样就可以实现把所有汉字替换成字母,再去检测长度就可以得到所占的字节数了。

    网上还有一种
    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);

    但是我打印出来是 NaN ,我觉得还是第一种方法好用

  • 相关阅读:
    2015 省赛随便写写
    有向图强连通分量
    复杂状态的动态规划
    hdu 3350
    树状DP
    十字链表矩阵
    最优矩阵链乘
    poj 3778
    Poj 3771 hdu 3405
    [2015hdu多校联赛补题]hdu5302 Connect the Graph
  • 原文地址:https://www.cnblogs.com/shenjp/p/6908897.html
Copyright © 2011-2022 走看看