これら 2 つの方法を使用してオブジェクトを作成することの基本的な違いと、オブジェクトを使用した場合の効果を知る必要があります。
//////////////////////////////////////////
myTestObject.prototype.var1 = null;
function myTestObject()
{
this.var1 = "test me";
}
myTestObject.prototype.action = function()
{
alert("alertme");
};
// to use
var a = new myTestObject();
a.action();
//////////////////////////////////////////
//////////////////////////////////////////
(function()
{
$.myTestObject3 = {
var1 : "test me",
action : _actionMethod
};
function _actionMethod()
{
alert("alertme3");
}
})();
$.myTestObject3.action();
//////////////////////////////////////////
いくつかの更新...この質問への回答により、さまざまなキーワードをグーグルで検索し、JavaScriptのコンストラクターとリテラルオブジェクトについて実際に詳細に説明した2つの興味深い記事につながりました
http://net.tutsplus.com/tutorials/javascript-ajax/the-basics-of-object-directional-javascript/
次に、関数コンストラクターを使用するときにプロトタイプを使用する理由のセグエとして、プロトタイプの使用が優れている理由に関するセクションに特に注意を払います。
したがって、フォローアップとして、以下のギターの例のように 2 つの組み合わせを使用することをお勧めします。オブジェクトのコピーが 1 つだけ必要で、その変更がスクリプト全体に影響することがわかっている場合は、オブジェクト リテラルで問題ありません。ただし、プロトタイプ アプローチを使用して多くのオブジェクトを作成する必要がある場合は、作成されたすべてのオブジェクトが関数のコピーではなく、同じ関数への参照を使用するのが最適です。
名前空間をより有効に活用し、これらすべてのアプローチを組み合わせるための別の良い記事 http://javascriptweblog.wordpress.com/2010/12/07/namespacing-in-javascript/
LAST FOLLOW-UP これらのトピックが私をしばらくループさせたので、他の人がこれを役に立つと思うことを願っています.
今何を探すべきかを知っていたので、多くのデザインパターンと、いくつかの例を使用してJavaScriptでそれらを組み合わせる方法を説明する2つの非常に優れたURLを見つけました.
これは、プロトタイプ表記法を利用する方法でモジュール パターンを使用する方法を説明します。これにより、インスタンスが同じオブジェクトを参照していることを確認しながら、コードを区分化できます。 http://briancray.com/posts/javascript-module-pattern/
これは、いくつかの設計パターンを通過し、長所と短所をリストします http://addyosmani.com/resources/essentialjsdesignpatterns/book/