var name = function(n) {
var digits = ['one','two','three','four'];
return digits[n];
}
var namenew = (function() {
digits = ['one','two','three','four'];
return function(n) {
return digits[n];
}
}());
両方のバージョンで同じ結果が得られますが、2番目のバージョンは最初のバージョンよりもはるかに高速です。閉鎖したJavascriptのパフォーマンス
私が理解しているように、最初のバージョンは、2番目のバージョンが実行結果を格納するたびに関数を実行します。それが機能的な/規則的なOOPSプログラマとして私を混乱させるものです。
関数を内部コンテキストで保存するにはどうすればよいですか?フードの下で何が起こっていますか?いくつかのpls明確にすることはできますか?
それは数字のリストを含むオブジェクト、プラスメソッドを作成しています。 –