根据几个单词在数组中搜索单词



嗨,我有一个问题,如何搜索至少包含部分单词的单词。我的意思是我在数组 javascript 中找到的带有单词的单词,除了 PUSH,没有内置函数。

此任务不需要索引,切片,子斯特,子字符串,正则表达式等。仅推送

这是我到目前为止的代码:

function wordsChecker(sentences, search) {
    var result = []
    for (var i = 0; i < sentences.length; i++) {
        var isCheck = false
        for (var j = 0; j < sentences.length; j++) {
            for (var k = 0; k < search.length; k++) {
                if (sentences[i][j] == search[k]) {
                    isCheck = true
                }
            }
        }
        if (isCheck == true) {
            result.push(sentences[i])
        }
    }
    return result
}
console.log(wordsChecker(['broom, room, rox, show room, stroom, root, rote, brother'], 'roo'))
//expected output : [broom, room, show room, stroom, root]

提前致谢

首先,您应该制作正确的数组。我希望这段代码对您有用

function wordsChecker(sentences, search) {
    var result = [], k = 0;
    for (var i = 0; i < sentences.length; i++) {
        var isCheck = false;
        for (var j = 0; j < sentences[i].length; j++) {
            while (k < search.length) {
                if (sentences[i][j] == search[k]) {
                    isCheck = true;
                    k++;
                    break;
                } 
                else {
                  isCheck = false;
                  k = 0;
                  break;
                }
            }
        }
        if (isCheck === true && k === search.length) {
            result.push(sentences[i]);
            k = 0;
        }
    }
    return result;
}
console.log(wordsChecker(['broom', 'room', 'rox', 'show room', 'stroom', 'root', 'rote', 'brother'], 'roo'));

最新更新