Bom vamos lá pelo o que eu entendi:
var numeroSorteados= [12, 22, 26, 31, 6, 10];
<--- Numeros ja determinados pelo programador ( voce )
var numeroApostado = [];
<--- Array vazia ou seja , vai ser preenchida mais pra frente , provavelmente pelo usuario ou programa , nesse caso pelo usuario.
for (i = 0; i < 6;i++){
numeroApostado[i] = parseInt(prompt("Qual sua aposta?"));
}
Aqui ele ta fazendo um prompt ( popup que aparece no navegador ) pro usuario inserir 6 numeros que vão ser colocados dentro da arrays , sendo que vai começar da posição 0 e vai até a posição 5 ,
Pois esta delimitado que i < 6 ( o i só pode ter 6 numeros. ) E o i++ fala que quando ele colocar um numero no prompt ele preencher a primeira casa que seria a 0 , e depois começar o loop dinovo porem apartir da casa 1. depois 2 depois 3 depois 4 depois 5.
parseInt pois o numero deve ser Numero e não Texto.
var numerosAcertados = 0;
for (j = 0; j < 6; j++) {
for (l = 0; l < 6; l++) {
if (numeroApostado[j] == numeroSorteados[l]) {
numerosAcertados++;
}
}
}
Aqui ele ta falando que se o Numero J for igual ao numero L , sendo L sorteados e J apostados , Então adicionar um ponto no numerosacertados.
Ja que numerosacertado++ = 1 depois 2 depois 3 depois 4 depois bla bla bla bla até o loop rodar.
o FOR ta falando até onde ele tem que contar dentro do arrays , entao ele ta falando pro programa usar como base todos os 6 numeros dentro da array, começando pela casa 0 e indo ate a casa 5.
alert("Voce acertou: " + numerosAcertados);
Simples , mostra um alerta contendo quantos numeros acertados voce acertou.