Hej, mam problem ze zrozumieniem zadań z książki. Mianowicie
function countChar(string, ch) {
let counted = 0;
for (let i = 0; i < string.length; i++) {
if (string[i] == ch) {
counted += 1;
}
}
return counted;
}
function countBs(string) {
return countChar(string, "B");
}
console.log(countBs("BBC"));
// → 2
console.log(countChar("kakkerlak", "k"));
// → 4
Możecie wytłumaczyć dlaczego jest tutaj użyta pętla for? Dobrze rozumiem że iteracji pętli jest tyle ile znaków ma dany string i po prostu pętla "przechodzi" przez każdy znak? Co oznacza to [i] przy string?
Drugie zadanie.
function isEven(n) {
if (n == 0) return true;
else if (n == 1) return false;
else if (n < 0) return isEven(-n);
else return isEven(n - 2);
}
console.log(isEven(50));
// → true
console.log(isEven(75));
// → false
console.log(isEven(-1));
// → false
Jeżeli wybiorę liczbę np. -4 to wtedy zachodzi akcja return isEven(-n). Tego nie rozumiem, co wtedy się zwraca? isEven(-(-4) co daje 4 czyli liczbę parzystą?