コード |
var a=[0], Double=function(){ a=a.concat(a) }, Bomb=function(n){ for(var i=0;i<n;i++) Double() }, Now=function(){ alert(a.length) } |
Bomb(100)はやめておいた方がいいのです。Out of Memoryといわれました。 第65回ではn次元配列で無限の要素を扱いましたが、今回はダイレクトに、 配列の要素をゴスゴスと増やしていきます。 すると、ぼくはちのーおくれだから、なんにもわりいことしてないのに、 |
わかりづらいネタはやめるとして、こういうことは出来なさそうです。なので、前回の結論を改め、 「非常に大きな情報を扱いたいときは、n次元配列で決まりです。」 |
コード2(おまけ) |
var a2=[1], f2=0, Double2=function(){ a2=[a2,a2] }, Main2=function(n){ for(var i=0;i<n;i++) Double2() f2+=n }, Now2=function(){ var t=a2,i for(i=0;i<f2;i++) t=t[0] alert(f2+'\n'+Math.pow(2,f2)+'\n'+t) } |
Mainのボタンの下3つは上級者向けです。 まあ、こういうことです。無限っつっても限界があるのです。 タスクマネージャでページファイル使用量を見てみると面白いです。 |
top 戻る |