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 对于贪心,二分,枚举等基础一定要掌握的很牢,要一步一个脚印走踏实 这是道贪心的题目,要有贪心的意 ...
随机推荐
- Django——在线教育项目总结
项目简介 在线教育平台 软件依赖: WEB框架:Django(1.11.7).Django REST framework 前端框架:Vue(2.5.16) 数据库: MySql.redis 支付平台: ...
- css加载动画...
加载动画... <p>加载动画...</p> <p> </p> <p> </p> <style><!-- .c ...
- 重构file_get_contents实现一个带超时POST传值函数
function wp_file_post_contents($url, $post = null) { $context = array(); if (is_array($post)) { ksor ...
- 变量类型-String
教程:一:字符串的创建 用单引号.双引号括起来,同时用转义字符转义 二:字符串的索引 变量[头标:尾标] 从前到后:0---end 从后到前:-1---->-len(str)三:获取 ...
- makefile编写
概述 什么是makefile?或许非常多Winodws的程序猿都不知道这个东西,由于那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序猿,makefil ...
- node 学习(二)
写基础太麻烦了 我花了个基础知识的脑图
- 汇编入门——使用DOSBox写一个HelloWorld以及相关软件安装
0.0.0) 在D盘建立一个ASM文件夹 0.0.1) 放入所需要的文件 1所标示的红色框为必须要存在的文件,要处理汇编文件.百度网盘中下载. 2自己编写的汇编(asm)文件. 3编译汇编自己生成的文 ...
- vue发送请求---fetch-jsonp
fetch-jsonp和axios类似,都是第三方插件返送请求,而vue-resource是vue官方提供的请求插件 前两个哪个组件使用就在那里引入,vue-resource直接在vue的main.j ...
- Gym 101908C - Pizza Cutter - [树状数组]
题目链接:https://codeforces.com/gym/101908/problem/C 题意: 一块正方形披萨,有 $H$ 刀是横切的,$V$ 刀是竖切的,不存在大于等于三条直线交于一点.求 ...
- html中不常用但必须知道的标签
1.<b>加粗</b> 为天地立心,为生民立命,为往圣继绝学,为万世开太平 2.<s>删除线</s> 为天地立心,为生民立命,为往圣继绝学,为万世开太平 ...