var code = "...".charCodeAt(0);
0x00 - 0xff
ASCII码范围内应该是单字节吧
0x0100 - 0xffff:双字节
不知道是不是可以这样判断?

解决方案 »

  1.   

    <script type="text/javascript">
        //<![CDATA[
    function foo(str) {
      var html = '';
      for (var i=0; i<str.length; i++) {
        var s=str.charAt(i);    
        html+=s+(s.charCodeAt(0)>255?' --是"双"字节':' --是"单"字节')+'\n';
      }
      alert(html)
    }
    foo('我在csdn');
        //]]>
        </script>
      

  2.   

    fosjos:
    我觉得你的理解有道理,请问你知道ASCII码列表的官方网站吗?谢谢lovefootball(蟑螂):
    该问题如何用正则?请告知详细写法,谢谢BlueDestiny:
    如何理解:
    s+(s.charCodeAt(0)>255
    谢谢
      

  3.   

    差不多就是编码超过255就是双字节了的意思
    正则可以用
    <script language=javascript>
    var str="sdfsdf&Ecirc;&iquest;&acute;ó·ò"
    re=/[^\x00-\xff]/g
    if(str!="")
    {
    alert(str.replace(re,"**").length)
    }
    else
    {
    alert(0)
    }
    </script>