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 myObject = {
    myProperty: 'I can see the light', 
    myMethod : function(){
        var that = this; // this(myObject)への参照をmyMethodスコープに保持
        var helperFunction = function() { // ネストされた子関数
            // thatに親関数のthisの値が保持されているため、myObject.myPropertyにアクセスできる
            console.log(that.myProperty); // 出力:'I can see the light'
            console.log(this); // thisの値そのものは変更されている 出力:window
        }();
    }
}

myObject.myMethod();


var myObj = {
	myP: 'we are BOOWY',
	myM: function(){
		var that = this;
		var hF = function(){
			console.log(this);
			console.log(that.myP);
		}();
	}
}
myObj.myM();