JSONP を非同期にやる #2

id:yellow_73:20061018#p5 の続き。
http://la.ma.la/blog/diary_200609061514.htmOperaではできない非同期呼び出しを実現する方法が出ています。そのうちの、setTimeout を使うワザについて読んでみる。
自分自身のために解説すると、setTimeout は、組み込み関数であって、setTimeout( expr, millisecond ) という書式で、指定したミリ秒後にexprを評価するというものみたいです。

setTimeout( function() { (scriptを差し込む手続き) }, 0 );

は、0ミリ秒後に(=すぐに)別スレッドでscriptを差し込む手続きを実行するという意味か。なるほど考えたものです。
ただ、Operaはscriptを差し込むことでロードしたコードはキャッシュに入れるみたいですから、特にステートフルなものを扱う場合には注意が必要。サービス側のHTTPヘッダにキャッシュしないような指示を放り込めばいいだけですけど。