gpt4 book ai didi

javascript - 检查一个单词是否有多个字母

转载 作者:行者123 更新时间:2023-11-28 08:58:48 26 4
gpt4 key购买 nike

我正在尝试检查一个单词中是否有多个字母(每个单词有 5 个字母),并且我在名为“库”的变量中有一个包含 8938 个单词的数组。

           function checkLetters(word){
var constant = 0;
for(i=0;i<5;i++){
for(j=i+1;j<5;j++){
if(word.charAt(i) == word.charAt(j)){
return false;
break;
} else {
return true;
}
}
}
}
if(compPrompt == 5 && checkLetters(compChoice) == true){
console.log(checkLetters(compChoice));
$('.right').append('<p id="winQuestion">Is "'+compFinalChoice+'" your word?');
$('.right').append('<div class="yesNo" id="yesQ"><p>Yes</p></div>');
$('.right').append('<div class="yesNo" id="noQ"><p>No</p></div>');
$('#yesQ').click(function() {
alert('Your word is "'+compFinalChoice+'". You lose!');
document.location.reload(true);
});
$('#noQ').click(function() {
$('.yesNo').remove();
$('#winQuestion').remove();
var splitCompChoice = compFinalChoice.split('');
var constant = 0;
var possibleAnswers = [];
for(var k=0;k<8939;k++){
for(var i=0;i<5;i++){
if(library[k].indexOf(splitCompChoice[i]) > -1){
constant++;
if(constant = 5 && checkLetters(library[k]) == true){
possibleAnswers.push(library[k]);
}
}
}
});
}

我的代码有两个问题。一是在 checkLetters(compChoice) 不为 true 时通过了 if(compPrompt == 5 && checkLetters(compChoice) == true){,二是告诉我 library[k] 未定义。

最佳答案

在第一个函数中,如果第一个字符不等于第二个字符,则返回 true,为了修复它,您应该更改:

function checkLetters(word){
var constant = 0;
for(i=0;i<5;i++){
for(j=i+1;j<5;j++){
if(word.charAt(i) == word.charAt(j)){
return false;
break;
} else {
return true;
}
}
}
}

至:

function checkLetters(word){
var constant = 0;
for(i=0;i<5;i++){
for(j=i+1;j<5;j++){
if(word.charAt(i) == word.charAt(j)){
return false;
break;
}
}
}
return true;
}

其次,由于我们看不到您在此处发布的代码中声明 library 的位置,我相信它可能在某处定义为 var (本地变量),这意味着如果您希望能够在其他函数中使用它,您应该传递它。

更新:
关于library - 尝试更改代码如下:

$('#noQ').click(function(library) {
$('.yesNo').remove();
$('#winQuestion').remove();
var splitCompChoice = compFinalChoice.split('');
var constant = 0;
var possibleAnswers = [];
for(var k=0;k<8939;k++){
for(var i=0;i<5;i++){
if(library[k].indexOf(splitCompChoice[i]) > -1){
constant++;
if(constant = 5 && checkLetters(library[k]) == true){
possibleAnswers.push(library[k]);
}
}
}
}(library));

关于javascript - 检查一个单词是否有多个字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18060418/

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