I am trying to create a table with non repeating random letters (uppercase only) using JavaScript. Someone posted an answer, but it was deleted before I got a chance to ask: 1) Why is there a var x and a var y instead of having only a var x? 2)Why do you put i-1 in return letters[i-1]?
HTML5:
<table class="bingo">
    <tr>
        <td id="square0"></td>
        <td id="square1"></td>
        <td id="square2"></td>
    </tr>
    <tr>
        <td id="square3"></td>
        <td id="square4"></td>
        <td id="square5"></td>
    </tr>
    <tr>
        <td id="square6"></td>
        <td id="square7"></td>
        <td id="square8"></td>
   </tr>
 </table>
JS
//Create capital letters A - Z array
var letters = [];
    for (var i = 65; i < 91; i++) {
      letters.push(String.fromCharCode(i));
}
//Confuse about why there is a var x and a var y?
    for (var i = 0; i < 26; i++) {
       var x = Math.floor(Math.random() * 26);
       var y = Math.floor(Math.random() * 26);
       var temp = letters[x];
       letters[x] = letters[y];
       letters[y] = temp;
 }
 var rLetter = function(i) {
  return letters[i-1];
};
window.onload = function () {
  //calls the function  
  $("square0").innerHTML = rLetter(1);
  $("square1").innerHTML = rLetter(2);
  $("square2").innerHTML = rLetter(3);
  $("square3").innerHTML = rLetter(4);
  $("square4").innerHTML = rLetter(5);
  $("square5").innerHTML = rLetter(6);
  $("square6").innerHTML = rLetter(7);
  $("square7").innerHTML = rLetter(8);
  $("square8").innerHTML = rLetter(9);
}
 
     
     
    