Boa noite.
Ela declarou i como menor ou igual a letras.length, com isso o código entendeu que haveria mais algum item na lista, mesmo que não declarado na variável. Colocando apenas o sinal de menor foram mostradas as letras listadas sem a mensagem de undefined.
<script>
var letras = ['A', 'B', 'C', 'D'];
for( var i = 0; i < letras.length; i++ ) {
alert(letras[i]);
}
</script>