<div class="toolcode">
        <style type="text/css">
            .num {
                font-size: 14px;
                font-weight: 700;
                color: #F00
            }
        </style>
        <textarea id="content" name="content" class="toolarea">除夕更阑人不睡,厌禳钝滞迎新岁;
            小儿呼叫走长街,云有痴呆召人买。
            二物于人谁独无?就中吴侬仍有余;
            巷南巷北卖不得,相逢大笑相揶揄。
            栎翁块坐重帘下,独要买添令问价。
            儿云翁买不须钱,奉赊痴呆千百年。
            http://www.baidu.com/
            2018年12月3日17:32:11
        </textarea>
        汉字:<span id="zhongwen" class="num">87</span> 个<br>
        中文标点:<span id="zbiaodian" class="num">12</span> 个<br>汉字+标点:<span id="zhongwenbiaodian" class="num">99</span> 个<br>
        英文:<span id="yingwen" class="num">43</span> 个 (含英文状态下的数字、符号、标点)<br>
        数字:<span id="shuzi" class="num">13</span> 个<br>
        字符总数:<span id="numwords" class="num">241</span> 个字符<br><br>
        小贴士:汉字和中文标点算两个字符,数字、空格、英文字母,英文标点算做一个字符。<br>

        <script language="javascript">
            function $(id) {
                return document.getElementById(id);
            }
            var EventUtil = function () {};
            EventUtil.addEventHandler = function (obj, EventType, Handler) {
                //如果是FF
                if (obj.addEventListener) {
                    obj.addEventListener(EventType, Handler, false);
                }
                //如果是IE
                else if (obj.attachEvent) {
                    obj.attachEvent('on' + EventType, Handler);
                } else {
                    obj['on' + EventType] = Handler;
                }
            }

            //alert($("chaptercontent").value);
            if ($("content")) {
                EventUtil.addEventHandler($('content'), 'propertychange', CountChineseCharacters);
                EventUtil.addEventHandler($('content'), 'input', CountChineseCharacters);
                //EventUtil.addEventHandler($('chaptercontent'),'keydown',CountChineseCharacters('chaptercontent'));
            }
            window.onload = CountChineseCharacters();

            function showit(Word) {
                alert(Word);
            }

            function CountChineseCharacters() {
                Words = $('content').value;
                var W = new Object();
                var Result = new Array();
                var iNumwords = 0;
                var sNumwords = 0;
                var sTotal = 0; //双字节字符;
                var iTotal = 0; //中文字符;
                var eTotal = 0; //E文字符
                var otherTotal = 0;
                var bTotal = 0;
                var inum = 0;

                for (i = 0; i < Words.length; i++) {
                    var c = Words.charAt(i);
                    if (c.match(/[\u4e00-\u9fa5]/)) {
                        if (isNaN(W[c])) {
                            iNumwords++;
                            W[c] = 1;
                        }
                        iTotal++;
                    }
                }

                for (i = 0; i < Words.length; i++) {
                    var c = Words.charAt(i);
                    if (c.match(/[^\x00-\xff]/)) {
                        if (isNaN(W[c])) {
                            sNumwords++;

                        }
                        sTotal++;
                    } else {
                        eTotal++;
                    }
                    if (c.match(/[0-9]/)) {
                        inum++;
                    }
                }
                //alert(iTotal);
                $('zhongwen').innerText = iTotal;
                $('zbiaodian').innerText = sTotal - iTotal;
                $('zhongwenbiaodian').innerText = sTotal;
                $('yingwen').innerText = eTotal;
                $('shuzi').innerText = inum;
                document.getElementById("numwords").innerHTML = iTotal * 2 + (sTotal - iTotal) * 2 + eTotal;
            }
        </script>
    </div>

  

js统计字数的更多相关文章

  1. js统计文本框剩余可输入字数

    js统计文本框剩余可输入字数 <html><head runat="server"> <title></title> <scr ...

  2. js计算字数

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  3. textarea统计字数

    开发项目中经常会用到,textarea统计字数 源码如下: <!DOCTYPE html><html lang="en"><head> < ...

  4. textarea还剩余字数统计,支持复制粘贴的时候统计字数

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  5. word2016_统计字数

    统计字数 审阅->字数统计

  6. jquery实现输入框实时统计字数和设置字数限制功能

    <html> <header> <meta charset="utf-8"> <title>测试实时字数显示</title&g ...

  7. js统计字符串中各种字符情况

    问题描述:在一个字符串中,统计出大写字母.小写字母.数字和其他字符各数.这个算法以前在学习java的时候,老师说过,而且说了四种算法.在孔乙己的世界里,茴香豆的"茴"字有四种写法嘛 ...

  8. 关于写作那些事之利用 js 统计各大博客阅读量

    在日常文章数据统计的过程中,纯手动方式已经难以应付,于是乎,逐步开始了程序介入方式进行统计. 在上一节中,探索利用 csv 文件格式进行文章数据统计,本来以为能够应付一阵子,没想到仅仅一天我就放弃了. ...

  9. hdu 1735(贪心) 统计字数

    戳我穿越:http://acm.hdu.edu.cn/showproblem.php?pid=1735 对于贪心,二分,枚举等基础一定要掌握的很牢,要一步一个脚印走踏实 这是道贪心的题目,要有贪心的意 ...

随机推荐

  1. 最优装载—dp

    最优装载—dp 动态规划 一 问题描述 二 问题分析 三 代码实现 package dp_Loading; import java.io.BufferedWriter; import java.io. ...

  2. [PA2014]Budowa

    [PA2014]Budowa 题目大意: 有A和B两名候选人.共有\(n(n\le1000)\)个人参加投票.他们之间形成了一个树结构,树上的结点有两种身份:专家(叶子结点)或领导(非叶子结点).每位 ...

  3. Lesnoe Ozero 2017. BSUIR Open 2017

    A. Tree Orientation 树形DP,$f[i][j][k]$表示$i$的子树中有$j$个汇点,$i$往父亲的树边方向为$k$的方案数. 转移则需要另一个DP:$g[i][j][k]$表示 ...

  4. Go语言基础(一)

    Go语言基础(一) 国庆体验一下大名鼎鼎的Go语言,IDE使用IEDA+Go插件,边敲代码边体会,感觉Go语言好酷 一.Hello World 和Java类似,go文件需要一个package包含,代码 ...

  5. NOIP-金币

    题目描述 国王将金币作为工资,发放给忠诚的骑士.第一天,骑士收到一枚金币:之后两天(第二天和第三天),每天收到两枚金币:之后三天(第四.五.六天),每天收到三枚金币:之后四天(第七.八.九.十天),每 ...

  6. Windows系统maven安装配置

    Apache Maven是一个软件项目管理工具,基于项目对象模型(Project Object Model,即POM)的概念,Maven可用来管理项目的依赖.编译.文档等信息.使用Maven管理项目时 ...

  7. Java语言基础之数组

    引出数组和数组的定义 为什么要使用数组: 问题一: 声明变量时,每一个单独的变量都要对应一个变量名,但现在要处理一组相同类型的数据时,如要表示班上100个人的年纪,绝不能定义100个变量来表示每一个人 ...

  8. C# 换行

    要让一个Windows Form的TextBox显示多行文本就得把它的Multiline属性设置为true.  要让TextBox里面的文本换行大家往往会想到直接在要换行的地方加个转义的换行符&quo ...

  9. 壁虎书6 Decision Trees

    Decision Trees are versatile Machine Learning algorithms that can perform both classification and re ...

  10. static与volatile的用法

      static 1.概述 static 声明的变量在C语言中有两方面的特征: 1).变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值.这一点是它与堆栈变量和堆变量的区别 ...