JavaScript: uma variável pode ter vários valores?

Sou relativamente novo no JavaScript além do jQuery, e estava lendo sobre randomização em um array JavaScript e as deficiências de usar o método Array.sort com um número aleatório. Eu vejo a recomendação, em vez disso, é usar o shuffle de Fisher-Yates. Ao observar o código JavaScript desse método:

Array.prototype.randomize = function()
{
    var i = this.length, j, temp;
    while ( --i )
    {
        j = Math.floor( Math.random() * (i - 1) );
        temp = this[i];
        this[i] = this[j];
        this[j] = temp;
    }
}

Estou impressionado com esta linha:

var i = this.length, j, temp;

Oque esta acontecendo aqui? Uma variável recebe valores múltiplos ou é uma abreviação de algo?