JS取得以逗号+最后一个字分隔的字长

时间:2019-01-25 15:50:18

标签: javascript

我使用此字符串输入

one, two, three

我正在得到用逗号分隔的单词总数:

val = $("input").val().replace(" ", "");
words = val.split(",");
count = words.length;

它返回2,但还有一个单词three。其后没有逗号,因此不会被拆分/计数。

如何在长度中包括最后一个单词?

还有一个没有逗号的单词怎么办?

one

它应该返回1。

注意:我在输入时使用keyup, keypress从输入中获取单词长度。不知道这是否重要。

3 个答案:

答案 0 :(得分:1)

尝试一下

let str = 'one, two, three'
console.log( !str ? 0 : str.split(',').length )

答案 1 :(得分:1)

我已经在下面的代码中对此进行了测试,并且可以正常运行。

您可以为jsFiddle提供示例工作不正确吗?

function getCount(string) {
    val = string.replace(" ", "");
    words = val.split(",");
    count = words.length;
    console.log(count);
}

getCount('one');
getCount('one, two, three')
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

答案 2 :(得分:1)

您应该像这样使用.split()

let str = "one, two, three";

console.log(str.split(',').length);

let word = "one";

console.log(word.split(',').length);