firebugでletとか使うのはどうやるんだろう?
(function(n){ function range(i,j){for(i;i<j;i++){yield(i)}}; function shuffle(a){ for (var i=0, n=a.length; i<n; i++){ j = Math.floor(Math.random() * i); [a[i], a[j]] = [a[j], a[i]]; } } var a = [i for (i in range(0,n))]; for (var i=0; i<n; i++){ let (j=i){a[j]=function(){console.log(j)}}; } shuffle(a); return a })(5).forEach(function(e){e()});
とか動かしてみたい。