Olá Gabriel, tudo bem?
Isso acontece porque dentro do for na função createPhoneNumber(numbers)
, você está passando o array inteiro dentro do document.write(phoneNumber)
! O que queremos fazer aqui é imprimir apenas os elementos do array, portanto ao invés de passar a lista inteira de elementos, passamos apenas o elemento i:
for(i = 0; i < phoneNumber.length; i++) {
document.write(phoneNumber[i]) <-- imprimindo apenas um elemento do array
}
Veja que como a função createPhoneNumber(numbers)
já imprime os elementos por conta própria, não é necessário usar a função mostra()
no final do código. Além de que a variável i está sendo declarada suas vezes no código, sendo que ela só é utilizada dentro do for, portanto podemos deixar sua primeira declaração de fora:
var phoneNumber = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
var i = 0; <-- pode tirar isso
for(i = 0; i < phoneNumber.length; i++) { <-- ja esta sendo declarada aqui dentro
document.write(phoneNumber[i])
}
O mesmo ocorre com o parâmetro numbers
na função createPhoneNumber(numbers)
. Embora ela esteja sendo declarada e até recebe o valor 2 posteriormente, ela nunca é usada dentro da função!
function createPhoneNumber(numbers) { <-- numbers nunca mais aparece
var phoneNumber = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
var i = 0
for(i = 0; i < phoneNumber.length; i++) {
document.write(phoneNumber[i])
}
}
Após aplicar essas mudanças, você verá esse resultado na tela:
0123456789
Como eu não sei exatamente qual são as condições que você quer atingir com esse programa, não sei se serei capaz de ajudar muito.
Se ficou alguma dúvida é só avisar, estamos à disposição!
Abraços e bons estudos!!