NewsCalendar という準名前空間/クラスを作成しました。私の意図は、グローバル名前空間の汚染を回避し、プライベートにする必要がある関数を非表示にすることです。しかし、パブリック メソッドであるべきものを呼び出そうとすると、「オブジェクトはこのプロパティまたはメソッドをサポートしていません」というメッセージが表示されます。
function NewsCalendar()
{
var privatevar; //private vars
this.onLoad = function () //public method
{
//Do Stuff
};
function getWeekStart(date) //private function
{
//Do Stuff
}
}
コメントは、各アイテムがどのように動作することを意図しているかを示すためにあります。
次のように onLoad 関数を呼び出してみました。
NewsCalendar.onLoad();
ただし、「オブジェクトはこのプロパティまたはメソッドをサポートしていません」というエラーが発生します。NewsCalendar を名前空間のように使用し、NewsCalendar.propertyname または NewsCalendar.methodname() を使用して、このオブジェクトに関連付けられた変数/メソッドを呼び出せるようにしたいと考えています。