Manutenção da ordem da matriz em Javascript

Eu sou novo em JavaScript e estou tendo problemas para trabalhar com minha matriz. Quero que minha matriz seja ordenada como eu a escrevo explicitamente, e não como o JavaScript decide.

Se tivermos uma matriz

var array = {
    0: 'zero',
    4: 'four',
    2: 'two'
};

Quando eu escolho exibir isso no console ou iterar sobre ele, é reordenado assim

array = {
    0: 'zero',
    2: 'two',
    4: 'four'
};

Eu tentei 2 loops até agora, o loop for e também o loop for com a instrução in. Ambos funcionam de acordo com o que eu supus que eles usariam uma chave e trabalham lá de cima para baixo, tornando a ordem que eu especificar é absolutamente inútil.

Como posso escrever / imprimir / trabalhar com minha matriz como ordenada? Em outras linguagens, como PHP, é tão simples quanto

$array = array(
    0 => 'zero',
    4 => 'four',
    2 => 'two'
);

foreach($array as $key => $value)
    echo $key ."\n";

Isso produziria

0
4
2

Desde já, obrigado.

questionAnswers(3)

yourAnswerToTheQuestion