I have the following JS code:
window.Foo = {};
window.Foo.Name1 = function()
{
function Bar1(param1)
{
this.Name = param1;
}
}
var gMyBar = new Foo.Name1.Bar1("hello world");
alert(gMyBar.Name);
I’m getting the error “Foo.Name1.Bar1 is not a constructor” in my Firefox error console… what gives?
You’re confused about “namespaces” in JavaScript. JavaScript does not have namespaces, only objects and functions. You’ve declared
Bar1as a local function within the closure of the functionName1. It is not a member ofName. I’m not sure what you’re going for here, but I think this is it: