
JavaScript ループ内のイベント ハンドラー: クロージャの必要性
JavaScript では、ループ内でイベント ハンドラーを操作するときに、次のことが必要になる場合があります。適切なパラメータの受け渡しを保証するためにクロージャを実装します。次のコードを考えてみましょう。
<code class="javascript">for (var i = 0; i < blah.length; i++) {
var select = document.createElement('select');
select.onchange = function() {
onStatusChanged(select, callid, anotherid);
};
}
このシナリオでは、onchange イベントが発生すると、onStatusChanged() に渡される値はすべての