在span javascript中,从id返回的用户中计算\u字符\u和\u单词

在span javascript中,从id返回的用户中计算\u字符\u和\u单词,javascript,Javascript,我是一个Javascript新手,我一直在寻找正确的方法来实现这一点,但我似乎无法正确地实现它。我想实时计算用户文本区域(id)中的字符和单词,并在键盘上以两个不同的跨度显示答案 我认为html是正确的,只是我明显缺乏javascript技能 函数计数字符和单词(){ const textarea=document.getElementById(“text_count”).innerHTML.value; 结果=wc 结果=cc for(设i=0;i{ 返回计数+字长; }, 0); docu

我是一个Javascript新手,我一直在寻找正确的方法来实现这一点,但我似乎无法正确地实现它。我想实时计算用户文本区域(id)中的字符和单词,并在键盘上以两个不同的跨度显示答案

我认为html是正确的,只是我明显缺乏javascript技能

函数计数字符和单词(){
const textarea=document.getElementById(“text_count”).innerHTML.value;
结果=wc
结果=cc
for(设i=0;i

字符:
单词:

函数计数字符和单词(){
const textarea=document.getElementById(“text_count”).value;
const wc=textarea.split(“”).length
const cc=textarea.length
document.getElementById(“单词计数”).innerText=wc;
document.getElementById(“char\u count”).innerText=cc;
}


字符:
单词:

你很接近了,你的逻辑很好。但是你没有任何字符计数器增量。您也没有在cc或wc中声明。我修改了你的代码,但只是一点点。我还为多空间添加了替换函数。如果需要,可以将其删除

在这里:

函数计数字符和单词(){
var textarea=document.getElementById(“text_count”).value;
var-wc=0;
var-cc=0;
//将所有多个空间替换为单个空间
textarea=textarea.replace(/\s\s+/g,“”);
对于(设i=0;i检查此项:

document.getElementById('text_count').onkeyup = function () {
 document.getElementById('char_count').innerHTML = this.value.length;
document.getElementById('word_count').innerHTML = this.value.split(' ').length;
};
不需要循环

您只能计算空格的数量,并将其作为一个单词计算

我建议您阅读更多关于JavaScript的内容

函数计数字符和单词(){
const textarea=document.getElementById(“text_count”).value;
让word_count=textarea.split(“”).length;
让char_count=textarea.length;
document.getElementById(“word\u count”).innerText=word\u count;
document.getElementById(“char\u count”).innerText=char\u count;
}

人物:

话:

  • 使用
    split()
    方法按空格分割单词
  • 对于每个单词,使用
    Array.reduce()
    函数计算字符数
函数计数字符和单词(文本){
const wordList=text.split(+/);
const cc=wordList.reduce((计数,单词)=>{
返回计数+字长;
}, 0);
document.getElementById(“word\u count”).innerText=wordList.length;
document.getElementById(“char\u count”).innerText=cc;
}

字符:
单词:

函数计数字符和单词(){
const textarea=document.getElementById(“text_count”).value;
const words=textarea.split(“”);
设wc=words.length;
设cc=textarea.length
如果(单词[wc-1]=“”){
wc--;
cc--;
}
cc=wc==1?cc:cc-(wc-1);
document.getElementById(“单词计数”).innerText=wc;
document.getElementById(“char\u count”).innerText=cc;
}

字符:

单词:

您可以使用jQuery还是只需要js的答案?我需要js的答案:(
fd eff
输入输出错误,字符应该是
5
,而它给出的是
6
@rahul kumar No,空格也是一个字母,‍‍‍‍
fd eff
6
字符我们需要计算单词中的字符数,否则你看到它的方式就会有一个单词如果你假设空格也是一个字符,从程序员的角度而不是用户的角度来看是正确的文本中的字母数,而不是单词,
我想实时统计用户文本区域中的字符和单词‍啊。当我为正则表达式添加编辑时,我没有将
const textarea
更改为
var textarea
。谢谢提醒。
 This will give word counts and character counts(space is not considered)