Porównywanie elementu tablicy ze stringiem

0

Cześć, mam problem, otóż mam zdeklarowaną tablicę 4 elementową o nazwie tab typu string, w indeksie tablicy o nazwie proNumb siedzi wylosowana wcześniej liczba z przedziału 0-3, dostaję się do elementu tablicy string i chcę sprawdzić po każdej literze (charAt(i)) czy jest taka sama jak w zmiennej typu string o nazwie letters, tam też dostaję się do każdej litery poprzez charAt(nr), parametr funkcji (nr) pobiera go z divów, gdzie każda litera alfabetu ma przyporządkowaną własną wartość liczbową, Porównanie nie działa jak powinno. Można w ogóle w ten sposób porównywać element tablicy ze zwykłym stringiem?

function checkLetter(nr)
{
    for(i=0; i<tab[proNumb].length; i++)
    {
        if(tab[proNumb].charAt(i) == letters.charAt(nr)) alert("Działa!");
    }
}

EDIT: załączam całość kodu: https://paste.ofcode.org/mHjGjBJS4Gdp3s3Ru4nx6D

0

Jeśli dobrze zrozumiałem to chyba powinno być letters.charAt(i)?

0
iksde napisał(a):

Jeśli dobrze zrozumiałem to chyba powinno być letters.charAt(i)?

to i to nie działa ;d

0

Możliwe, że jestem zbyt zmęczony, ale przeczytałem pierwszego posta kilka razy i nie wiem, co chcesz osiągnąć. Chcesz sprawdzić, czy którakolwiek litera w tab[proNumb] i letters się zgadza, czy czy jedno i drugie ma taką samą wartość?

0
iksde napisał(a):

Możliwe, że jestem zbyt zmęczony, ale przeczytałem pierwszego posta kilka razy i nie wiem, co chcesz osiągnąć. Chcesz sprawdzić, czy którakolwiek litera w tab[proNumb] i letters się zgadza, czy czy jedno i drugie ma taką samą wartość?

chcę sprawdzić w petli for czy litera z tablicy tab o indeksie iterowanym jest taka sama jak litera jak litera ze stringa letters.charAt(nr)

0

Może zarys ogólny: piszę grę wisielec i chcę w tym kroku sprawdzić, czy litera, którą kliknąłem w planszy znajduje się w zakreskowanym haśle

1

W takim razie najłatwiej będzie użyć String.prototype.indexOf

Return value
The index of the first occurrence of searchValue, or -1 if not found.
An empty string searchValue will match at any index between 0 and str.length
0
iksde napisał(a):

W takim razie najłatwiej będzie użyć String.prototype.indexOf

Return value
The index of the first occurrence of searchValue, or -1 if not found.
An empty string searchValue will match at any index between 0 and str.length

Dzięki wielkie, jutro zbadam temat jak przysiądę do kodu!

0

indexOf() też nie działa

0
const tab = ["Bez pracy nie ma kołaczy", "Kto wybrzydza ten nie rucha", "Kto nie skacze ten z policji", "Zdechł pies falubaz"];

const letters = "aąbcćdeęfghijklłmnńoópqrsśtuvwxyzźż"; 

const checkLetter = (nr) =>
{
    for(i=0; i<tab[0].length; i++)
    {
    console.log(letters.charAt(nr));
        if(tab[0].charAt(i) === letters.charAt(nr)) alert("Działa!");
    }
}

checkLetter(6); // litera e

Działa

1 użytkowników online, w tym zalogowanych: 0, gości: 1