これは、クロージャーを使用して配列を更新する最良の方法ですか。これに似たものを別のサイトで見ました。作成されるグローバル変数について疑問に思っていclosure1
ました。グローバルを作成せずにこれを行う方法はありますか。
<script>
var closure1=Closure(0, 0);
function Closure(num, i) {
var num=num;
var index=i;
var anArray = [];
return function(num,index) {
anArray[index]=(num);
out.innerHTML=anArray;
}
}
</script>
<div id="d1" onclick=" closure1(2,0)">2 index 0</div>
<div id="d2" onclick=" closure1(5,3)">5 index 3</div>
<div id="d3" onclick=" closure1(4,1)">4 index 1</div>
<div id="d4" onclick=" closure1(9,7)">9 index 7</div>
<div id="out" >?</div>