私はこのコードを持っています:
var as = document.getElementsByTagName('a');
for ( var i = as.length; i--; ) {
as[i].onclick = function(num) {
return function() {
console.log(num);
};
}(i);
}
num
これは期待どおりに機能しますが、以下に示すように return 関数に追加すると。プリントアウトしmouse event
ます。なんで?
var as = document.getElementsByTagName('a');
for ( var i = as.length; i--; ) {
as[i].onclick = function(num) {
return function(num) { //Adding num here causes issue
console.log(num);
};
}(i);
}