// JavaScript source code
var foo = (function() {
var o = { bar: "bar" };
return {
bar: function() {
console.log(o.bar);
}
};
})();
foo.bar();
何が起こっているの? fooはオブジェクトですか?名前付き関数ですか? プライベートデータメンバーのクラスコンセプトを提供するためには、これは恐ろしい方法です。
[(function(){...})() "のような匿名関数でJavascriptファイル全体をラップする目的は何ですか?(https://stackoverflow.com/questions/2421911/what-is) -the-wrapping-of-wrapping-javascript-files-in-anonymous-functions-li) – SLaks
@SLaks私は「いいえ」と言います。その質問は、ファイル全体についてです。無名関数は純粋にコードを実行し、値を返しません。 – Kayla