如何在JavaScript中添加句号结尾(如果它还没有)?

时间:2013-02-20 15:03:03

标签: javascript

我正在试图弄清楚如何检查字符串是否以句号结束,如果没有,则应通过vanilla JavaScript添加。有什么想法吗?

我在想这样的事情可能会真正看出变量末尾是否有完全停止,但似乎出错了?

此刻我还不知道如何在字符串末尾添加句号。

    if todoTitle.str.charAt(str.length-1) != "." {
        alert("doesn't end in .");
    } else {
        alert("does end in .");
    };

关于最佳方式的任何想法?谢谢!

3 个答案:

答案 0 :(得分:4)

if子句中的条件必须用括号括起来。另外,您将字符串引用为todoTitle.str一次,将str引用一次。我假设只有前者是正确的?所以:

    if (todoTitle.str.charAt(todoTitle.str.length-1) != ".") {
        alert("doesn't end in .");
    } else {
        alert("does end in .");
    }

(请注意,我还在;阻止后删除了不合适的else

此外,您可能需要明确检查以确保todoTitle.str.length >= 1


至于实际添加字符:一个选项是使用上面的检查,然后写todoTitle.str = todoTitle.str + '.'。另一种方法是使用replace方法组合检查和添加:

todoTitle.str = todoTitle.str.replace(/([^.])$/, '$1.');

如果最后一个字符本身不是.,这将替换最后一个字符加上自己加.

答案 1 :(得分:1)

如果陈述需要括在括号中:

if (todoTitle.str.charAt(str.length-1) != ".") {

答案 2 :(得分:1)

  

目前我不知道如何在字符串末尾添加句号。

那将是通过字符串连接:

if (todoTitle.str.charAt(todoTitle.str.length-1) != ".") {
    todoTitle.str = todoTitle.str + "."
}