js下判断中文的字数

JavaScript 小智 174℃ 0评论
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>判断汉字个数</title>
    <script type="text/javascript">
        function countNumIncludeChar() {
            var str = document.getElementById("inputId1").value;
            var n = 0;
            for (i = 0; i < str.length; i++) {
                var c = str.substr(i, 1);
                var ts = escape(c);
                // escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。
                // 该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: * @ - _ + . / 。其他所有的字符都会被转义序列替换
                if (ts.substring(0, 2) == "%u") {
                    n++;
                }
            }
            alert("中文(包含字符)有:" + n + "个");
        }

        function countNumExcludeChar() {
            var str = document.getElementById("inputId2").value;
            var n = 0;
            for (i = 0; i < str.length; i++) {
                var c = str.substr(i, 1);
                var reg = /^[\u4E00-\u9FA5]+$/;
                if (reg.test(c)) { //汉字范围 \0x4E00-\0x9FA5
                    n++;
                }
            }
            alert("中文(不包含)有:" + n + "个");
        }
    </script>

</head>

<body>
    <input type="text" name="" id="inputId1">
    <input type="button" value="计算中文(包含字符)" onclick="countNumIncludeChar()">
    <br>
    <input type="text" name="" id="inputId2">
    <input type="button" value="计算中文(不包含字符)" onclick="countNumExcludeChar()">

</body>

</html>

本文固定链接:心知博客 » js下判断中文的字数
本站内容除特别标注外均为原创,欢迎转载,但请保留出处!

喜欢 (0)
发表我的评论
取消评论
表情

请填写您的昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址