Wie deklariere ich einen Namespace in JavaScript?

Wie erstelle ich einen Namespace in JavaScript, damit meine Objekte und Funktionen nicht von anderen gleichnamigen Objekten und Funktionen überschrieben werden? Ich habe folgendes verwendet: if (Foo == null || typeof(Foo) != "object") { var Foo = new Object();} Gibt es eine elegantere oder...