gpt4 book ai didi

javascript - 检查字符串是否以多个字符中的任何一个结尾

转载 作者:数据小太阳 更新时间:2023-10-29 05:41:36 24 4
gpt4 key购买 nike

我如何检查字符串是否以多个字符中的任何一个结尾?目前此代码返回 false,即使字符串以问号结尾。如果字符串以句点、感叹号或问号结尾,正常工作的代码将返回 true,如果字符串的最后一个字符是其他任何字符,则返回 false。

显然我可以独立检查这些条件,但假设我有一个很长的列表,肯定有更好的方法吗?

function myFunction() {
var str = "Hello?";
var n = str.endsWith(".", "!", "?");
document.getElementById("demo").innerHTML = n;
}
<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

最佳答案

endsWith 只是不接受多个字符串来测试。您可以定义它们的数组并使用 endsWith 检查每个值:

function endsWithAny(suffixes, string) {
return suffixes.some(function (suffix) {
return string.endsWith(suffix);
});
}

function myFunction() {
var str = "Hello?";
var n = endsWithAny([".", "!", "?"], str);
document.getElementById("demo").innerHTML = n;
}

或者一次性使用正则表达式:

var n = /[.!?]$/.test(str);

关于javascript - 检查字符串是否以多个字符中的任何一个结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45069514/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com