如何创建文本区域字计数器?

时间:2018-07-19 02:19:24

标签: javascript jquery html word-count

我创建了几个输入,它们输入到JavaScript命令中以创建自定义语句。用户输入或选择的任何内容都会添加到句子框架中。当用户选择提交时,该句子将在文本区域中创建。如何在我的应用程序中添加一个功能来计算文本区域中的单词?我只是想在文本区域的右下角有一个小文本框,用于说明文本区域中有多少个单词。

非常感谢您的帮助!

setOfMatches = set()
for bigDictAkey in bigDictA:
    for bigDictBkey in bigDictB:
        numberOfItemsInCommon = len(bigDictAkey & bigDictBkey)
        valForComparison = THRESHOLD*len(bigDictAkey)
        if (numberOfItemsInCommon >= valForComparison):
            setOfMatches.add(bigDictAkey)
            break

3 个答案:

答案 0 :(得分:2)

我不知道这是您在尝试什么,这是我对您的问题的理解:

<script type="text/javascript">

  var nameValidationInput = document.getElementById('s1');//here you search in your text area al the words
  function useValue() {
  var NameValue = nameValidationInput.value;
  document.getElementById("demo").innerHTML = NameValue.split(" ").length // here you count the word separated by a space
  }
</script>
<br>
<textarea rows="1" cols="5" id="demo"></textarea>// just to show the count in the text area
<br>

通过这种方式,该函数将对每个空格分隔的单词进行计数(如果您想要更详细的内容,可能会更加困难)

答案 1 :(得分:1)

最简单的方法是将文本区域中的所有文本存储在一个数组中(用空格隔开)。您可以使用.split来实现。完成后,只需获取数组的长度即可。它将返回世界计数。 试试这个。

var splitData = textarea.value.split(" ");
var wordCount = splitData.length;

答案 2 :(得分:1)

我将保留另一个版本。使用长度是不够的,因为它会将每个空白都计为一个单词,并且一开始即使它为空也将计为1个单词。我建议使用trim()和filter来防止这些错误,例如:

wordsArr = text.trim().split(" ")
wordsArr.filter(word => word !== "").length
相关问题