2016-04-14 8 views
0

以下はアレイをチャンクに分割するための作業コードです。もしあなたがこれに対してもっと良い解決策を持っているなら、私に教えてください。アレイを分割してオブジェクトに入れます

var a = []; 
 
    for (var i = 0; i < 4500; i++) { 
 
     a.push(i); 
 
    } 
 
    var ttt = {}; 
 
    var start = 0; 
 
    var end = 999 
 
    if (a.length > 999) { 
 
     for (var i = 0; i < 4; i++) { 
 
      ttt[i] = a.slice(start, end); 
 
      start = end + 1; 
 
    
 
      end = start + 999; 
 
      console.log(start + ":" + end); 
 
     } 
 
    } 
 
    console.log(a.length); 
 
    console.log(ttt[1].length);

+0

あなたはチャンクあたり1000件の最大のチャンクを使用して新しい配列を作りたいですか? – Kulvar

+0

結果はオブジェクトまたは配列である必要がありますか? –

答えて

0

あなたはもう、配列を必要としない場合は、Array#splice()の代わりArray#slice()を使用することができます。

var a = [], 
 
    ttt = {}, 
 
    i; 
 
    
 
for (i = 0; i < 4500; i++) { 
 
    a.push(i); 
 
} 
 

 
i = 0; 
 
while (a.length) { 
 
    ttt[i++] = a.splice(0, 1e3); 
 
} 
 

 
document.write('<pre> ' + JSON.stringify(a, 0, 4) + '</pre>'); 
 
document.write('<pre> ' + JSON.stringify(ttt, 0, 4) + '</pre>');

関連する問題