javascriptの配列のundefinedをゼロで埋めたい


タイトル通りなのですが、配列のundefinedをゼロで埋めるため以下のコードを実行したのですが思い通りの動きをしてくれません。

[code]

    [0,1,2,3,,,,,,9].map(function(v){return v||0;}) // -> [0,1,2,3,,,,,,9]
    
[/code]

scores.forEach()で何回ループするか確認してみたところ、5回しかループしませんでした。  
kockoutjsのdata-bind内部に書くコードなので、できるだけ１行で済ませたいと思っています。

どうすればよいでしょうか。




Int32Array にしてから Array に戻すとかはどうでしょうか

[code]

    Array.prototype.slice.call(new Int32Array([0,1,2,3,,,,,,9]))
    // [0, 1, 2, 3, 0, 0, 0, 0, 0, 9]
    
[/code]




Int32Array にしてから Array に戻すとかはどうでしょうか

[code]

    Array.prototype.slice.call(new Int32Array([0,1,2,3,,,,,,9]))
    // [0, 1, 2, 3, 0, 0, 0, 0, 0, 9]
    
[/code]

