这是javascript的初学者挑战之一,您需要检查传递给函数的参数(符号字符串,即=,+,任意字母)是否包含由+包围的随机字母。如果存在,则返回true,否则返回false。

function simple(str) {
    let alph = 'abcdefghijklmnopqrstuvwxyz';
    let alphArray = alph.split('');
    for (let i = 0; i <= alphArray.length; i++) {
        if (str.includes(`+${alph[i]}+`)) {
            return true;
        } else {
            return false;
        }
    }
}

console.log(simple('+d+=3=+s+'));



它应该返回true,但是我肯定会缺少某些东西,很可能是这种情况。
另外,尝试在不使用函数的情况下执行此操作,并使用带有给定符号的预定义变量进行操作,但效果很差。

最佳答案

您需要将false return语句移出循环,因为这将立即结束循环,而无需检查以下可能的真实值,并且需要使索引的长度小于字符串的长度。

顺便说一句,不需要使用数组。



function simple(str) {
    let alph = 'abcdefghijklmnopqrstuvwxyz';
    for (let i = 0; i < alph.length; i++) {
        if (str.includes(`+${alph[i]}+`)) {
            return true;
        }
    }
    return false;
}

console.log(simple('+d+=3=+s+'));

09-26 07:44