如何计算JavaScript中的字母?

时间:2017-10-28 07:54:44

标签: javascript

这是用于检查字数的工作代码,但我需要按字母计算:

$(document).ready(function() {
    $("#word_count").on('keyup', function() {
        var words = this.value.match(/\S+/g).length;

           $('#display_count').text(words);
            $('#word_left').text(10-words);


 if(words > 10) {
        $('input[type="submit"]').attr('disabled' , true);
           var trimmed = $(this).val().split(/\s+/, 10).join(" ");
            $(this).val(trimmed + " ");
    }else{
        $('input[type="submit"]').attr('disabled' , false);
    }

    });
 }); 

5 个答案:

答案 0 :(得分:3)

解决此问题的方法之一:

let str = 'how to count letters in javascript.'
let letterCount = str.replace(/\s+/g, '').length;

console.log(letterCount) //30

答案 1 :(得分:0)

按您的要求,这是按字母计算的。 在变量中使用.length计数字母。

$(document).ready(function() {
    $("#word_count").on('keyup', function(e) {
        var words = this.value.length;//I changed this
        //var words = this.value.match(/\S+/g).length;
           $('#display_count').text(words);
            $('#word_left').text(10-words);


 if(words > 10) {
        $('input[type="submit"]').attr('disabled' , true);
           var trimmed = $(this).val().split(" ").join("");
            $(this).val(trimmed);
    }else{
        $('input[type="submit"]').attr('disabled' , false);
    }

    });
 }); 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input type="text" id="word_count"><br/>
  <input type="submit">
</form>

<p id="dispay_count"></p>

<p id="word_left"></p>

答案 2 :(得分:0)

您可以将字符串转换为数组并过滤掉所有空格。

&#13;
&#13;
var text = 'Hello world! And all the people';
var length = text.split( '' ).filter( c => c != ' ' ).length;
console.log( length );
&#13;
&#13;
&#13;

或者您可以用空字符串替换所有空格,然后计算字符串长度:

&#13;
&#13;
var text = 'Hello world! And all the people';
var length = text.replace( /\s/g, '' ).length
console.log( length );
&#13;
&#13;
&#13;

答案 3 :(得分:0)

使用正则表达式省略非单词字符,然后在加入后计算长度。

let str = 'how to count letters in javascript.'
let letterCount = str.split(/\W/).join('').length

console.log(letterCount)

答案 4 :(得分:0)

&#13;
&#13;
//using javascript
var a = document.getElementById("inp");
a.addEventListener("keyup",function(){
document.getElementById("count").innerHTML = "Count :" + " "+ a.value.length;
})
&#13;
<input type="text"  id="inp">
<br>
<span id="count">Count :</span>
&#13;
&#13;
&#13;