メモリーリークの備忘録
http://www.tagindex.com/kakolog/q4bbs/1701/2057.html
http://www.tagindex.com/kakolog/q4bbs/1601/1871.html
http://www.tagindex.com/kakolog/q4bbs/1701/2049.html
http://www.tagindex.com/cgi-lib/q4bbs/patio.cgi?mode=view&no=2370
で、この「ななななぁ〜」って俺!<おばか丸出し!
メモリーリークとは関係ないけど
おばか丸出しもうひとつ見つけた
http://www.tagindex.com/cgi-lib/q4bbs/patio.cgi?mode=view&no=2385
今後、為になりそうなのを列挙しようっと!
http://www.tagindex.com/kakolog/q4bbs/1701/2085.html
http://www.tagindex.com/kakolog/q4bbs/901/1162.html
http://www.tagindex.com/kakolog/q4bbs/1701/2075.html
http://www.tagindex.com/cgi-lib/q4bbs/patio.cgi?mode=view&no=2534
なんで.onloadをつかわなくなったのか
http://www.tagindex.com/kakolog/q4bbs/1701/2041.html
それにしてもあそこは、宝の山だなぁ〜
追記。
document.getElementById('hoge').onclick = function(e){ var t = e.target || e.srcElement; };
思うに、以下、実際のコードとしてはおかしいのだろうけど、ノードhogeには、
hoge[ 'onclick' ] = function fuga ( e ) { var t = e.target || e.srcElement; };
関数(fuga)が追加された。
その関数が呼ばれると、その中で、ノードhogeが、変数(t)に代入される。
その変数(t)には、すでに t['onclick'] が存在している。
なぜなら、t = hoge なのだから。
そこで、この見方を以下のように変えてみる。
今実行されている関数(fuga)を基準として、変数(t)を覗いたとき、
今実行されているはずの関数(fuga)が、その変数(t)の中の t['onclick'] の中にあり、
さらに、その関数の中の変数(t)に、関数(fuga)があり・・・・と続く。と考えてはどうだろう
これを循環している!というのではあるまいか?
うまく表現というか、例えができているのだろうか?
さらに追記。
つまり、呼ばれた関数のなかで、ノードhogeが出現した時点で、循環が成立してしまう?
と、思うようになってきた。いや!そうに違いない!
なんと、ここまでの文章を書き上げるのに、読み返しては修正し、数十回に及んだのは言うまでもない!^^;
さらに、さらに、追加
メモリーリークは、もう少し掘り下げて勉強してからにします。