Python startswith()允许我测试字符串是否以字符串元组开头,如下所示,这是我要使用JavaScript实现的功能:

testvar = 'he', 'hi', 'no', 'ye'
if my_string.startswith(testvar):
    return True


我已经看到了SO question,它并不能完全帮助实现这一目标。

我需要一个JavaScript代码,与上面的Python代码做同样的事情。

最佳答案

您所需要做的就是在一个数组上进行简单循环,并在其中显示答案之一,

var testvar = ['he', 'hi', 'no', 'ye'];

function startsWith2(haystack, needles) {
    var i = needles.length;
    while (i-- > 0)
        if (haystack.lastIndexOf(needles[i], 0) === 0)
            return true;
    return false;
}

startsWith2('hello world', testvar); // true
startsWith2('foo bar baz', testvar); // false




对于endsWith同样;

function endsWith2(haystack, needles) {
    var i = needles.length, j, k = haystack.length;
    while (i-- > 0) {
        j = k - needles[i].length;
        if (j >= 0 && haystack.indexOf(needles[i], j) === j)
            return true;
    }
    return false;
}

10-05 21:52