SOにはおそらくこの質問の重複がありますが、私の質問に具体的に対処する質問はまだ見つかりません。
次のいずれかを含むWebアプリを構築しているとします。
約100個のプロパティを持つJSオブジェクト。そのうちの5個は、おそらく10個または15個のプロパティを持つサブオブジェクトであり、それぞれの約2/3は関数です。だから次のようなもの:
Obj={ x:y, y:z, obj1:{ func:func(), num:1, func2:func2() }, obj2:etc }
または、100程度のプロパティを持つオブジェクトがまだ存在するが、関数を実行する他のオブジェクトがグローバル名前空間に存在するいくつかの異なるオブジェクトは、次のようになります。
Obj={ x:y, y:z, etc:andthensome } obj1={ func:func(), num:1, func2:func2() } obj2={ etc:'I am also a larger objects with functions' }
最初の方法は、グローバル名前空間をよりクリーンに保ちますが、より再帰的なプロパティと関数の検索を可能にし、this
まっすぐに保つことを少し混乱させる可能性があります。
2番目の方法は簡単に作成できますが、グローバル名前空間にオブジェクトを追加し、パフォーマンスが低下する可能性があります(これが問題の一種です)。
私の質問は、どちらかの方法を使用することに大きな利点がありますか?それとも両方とも「良い」、両方とも「悪い」ですか?
私は多くのことが開発者の好みに関係していることを知っているので、同様の質問をする別の方法-私が本当に知りたいことに近い:
多数の小さなオブジェクトを使用する場合、または多数のサブオブジェクトや関数などを含む1つまたは少数の大きなオブジェクトを使用する場合、パフォーマンスは向上しますか?