JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://getfirebug.com/firebug-lite-debug.js"></script>
<!-- この枠内は無視してください -->




































































<h4><strong><a href="http://www.oreilly.co.jp/books/9784873116211" target="_blank">開眼!JavaScript</a> サンプルコード</strong></h4>

<p>スクリプトはページロード時に実行されます。</p><p>再度実行する場合や「JavaScript」ボックス内のスクリプトを修正して実行する場合は上部のナビゲーションバーにある「Run」をクリックしてください。</p><p>アウトプットはページ右下のFirebug Liteコンソールに出力されます。</p>

<a href="http://shop.oreilly.com/product/0636920027713.do" target="_blank">原著:JavaScript Enlightenment</a>

JavaScript

/* var logElementNumber = function() {
 	var funcArray = [];
 	var i;
 	var func = function(i) {
 		// パラメータにiを指定しているため、この関数スコープにローカル変数iが定義される
 		return function() { console.log(i); };
 	};
 	
 	for (i = 0; i < 3; i++) {
 		funcArray[i] = func(i); // インデックスを出力する関数をfuncArrayのそれぞれの要素に格納
 	}
 	
 	return funcArray;
 }();
 
 // 配列に格納された関数をそれぞれ実行
 logElementNumber[0](); // 出力:0
 logElementNumber[1](); // 出力:1
 logElementNumber[2](); // 出力:2 */

var logElementNumber = function() {
	var funcArray = [];
	var i;
	
	var func = function(i) {
		return function()  {
			console.log(i);
		}
	}
	
	for(i = 0; i < 3; i++){
		funcArray[i] = func(i);
	}
	
	return funcArray;
}();

logElementNumber[0]();
logElementNumber[1]();
logElementNumber[2]();