私は現在、JavaScript でクラスを構築するためのさまざまなパターンを検討しています。しかし、どんなパターンを見ても、まだよくわからないことがいくつかあります。
var ItemManager = (function()
{
var p = function()
{
this.items= [];
};
p.prototype.addItem = function(item)
{
var self = this;
self.items.push(item);
};
return p;
}());
シンプルなクラスItemManagerを作成します。このクラスは、任意の項目をコレクションに追加する関数addItemを取得します。ここで、コレクションを表す変数 items をパブリックにしたくありません。この変数はプライベートにする必要がありますが、プロトタイプ化されたメソッドを使用してプライベート変数にアクセスする方法はありません。
では、この場合のベストプラクティスは何ですか? プライベート変数を使用しないでください。