js统计字数
<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统计字数的更多相关文章
- js统计文本框剩余可输入字数
js统计文本框剩余可输入字数 <html><head runat="server"> <title></title> <scr ...
- js计算字数
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- textarea统计字数
开发项目中经常会用到,textarea统计字数 源码如下: <!DOCTYPE html><html lang="en"><head> < ...
- textarea还剩余字数统计,支持复制粘贴的时候统计字数
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- word2016_统计字数
统计字数 审阅->字数统计
- jquery实现输入框实时统计字数和设置字数限制功能
<html> <header> <meta charset="utf-8"> <title>测试实时字数显示</title&g ...
- js统计字符串中各种字符情况
问题描述:在一个字符串中,统计出大写字母.小写字母.数字和其他字符各数.这个算法以前在学习java的时候,老师说过,而且说了四种算法.在孔乙己的世界里,茴香豆的"茴"字有四种写法嘛 ...
- 关于写作那些事之利用 js 统计各大博客阅读量
在日常文章数据统计的过程中,纯手动方式已经难以应付,于是乎,逐步开始了程序介入方式进行统计. 在上一节中,探索利用 csv 文件格式进行文章数据统计,本来以为能够应付一阵子,没想到仅仅一天我就放弃了. ...
- hdu 1735(贪心) 统计字数
戳我穿越:http://acm.hdu.edu.cn/showproblem.php?pid=1735 对于贪心,二分,枚举等基础一定要掌握的很牢,要一步一个脚印走踏实 这是道贪心的题目,要有贪心的意 ...
随机推荐
- Jupyter notbook& REVEAL.JS& nbconvert 使用jupyter notebook制作slides
使用Jupyter notebook作为slide主要有两个方面: 在运行notebook 的时候可以幻灯片播放 这样幻灯片就有了notebook可交互的功能,而notebook就有了幻灯片全屏容易分 ...
- Petrozavodsk Summer-2017. Moscow IPT Contest
A. A Place For My Head 留坑. B. New Divide 从高位到低位贪心,当这一位是$0$时,要尽量取$1$,维护高维后缀最小值进行判断即可. 时间复杂度$O((n+a)\l ...
- 小甲鱼Python第二十讲课后习题---021
笔记: 1.lambda表达式的作用: 1)Python写一些执行脚本时,使用lambda就可以省下定义函数的过程,比如说我们只是需要写一个简单的脚本来管理服务器时间,我们就不需要专门定义一个函数然后 ...
- Java-IO流之输入输出流基础示例
一.理论: 1.什么是输入输出? 输入输出的对象是数据,数据的存储区域是磁盘或者光盘等设备,我们知道还有一个存储数据的空间----内存,其中磁盘的速度比较慢,内存的速度比较快,把数据读入内存的动作称作 ...
- [LeetCode] Design Circular Deque 设计环形双向队列
Design your implementation of the circular double-ended queue (deque). Your implementation should su ...
- verilog中signed的使用
1.在verilog中有时会用signed修饰符来修饰定义的数据,运算的时候也会用$signed()任务来强制转换数据,那么signed的修饰是为什么呢,是为了区分有符号数和无符号数的加法和乘法吗?其 ...
- Win7 IIS配置
一.首先,在开始打开你的控制面板 二.进入到控制面板,选择程序和功能,点击进入 三.在程序与功能中,左菜单栏,打开你的Windows工能 四.在Windows工能中,把你的Internet信息服务中的 ...
- ul的margin撑不开想要的距离的办法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- connection reset by peer
connection reset by peer https 请求返回下面的内容 {"msg":"connection reset by peer"," ...
- ASP.NET Core 从 gitlab-ci 环境变量读取配置
最近在加强持续集成,遇到一个场景需要通过 gitlab-ci 环境变量(Settings -> Settings -> CI/CD -> Variables )在持续集成时向 ASP ...