私は次のコードを持っている:JavascriptのOOPサブクラスのヘルプや構造
(function(){
var DS = (function(){
DS.prototype.queryDB = function() {
alert('query database');
};
DS.prototype.openDB = function() {
alert('open the database');
};
});
window.DS = new DS;
})(window);
私はその後、正常に動作します私のページからDS.queryDB()
とDS.openDB()
を呼び出すことができます。
私が望むのは、機能をさらに分離するためにDS
以内にデータベースクラスを持つことです。
DS.prototype.queryDB
をDS.prototype.Database.queryDB
に変更しようとしましたが、動作していないようです。これを可能にするためにコードをどのようにして構造化するのがベストでしょうか?
最初のステップとして、「DS.prototype.X」割り当て*をコンストラクタ関数の外に置きます。あなたのケースでは、インスタンスが1つしかないので違いはありませんが、そこに割り当てられるのは概念的に間違っています。 –
また、匿名関数をすぐに実行する場合は、括弧で囲んでください。 – nickf
私は今までhttp://jsfiddle.net/aw5mC/を持っています。 DS内でサブクラスを作成するにはどうすればよいですか? – fire