JavaScript命名空间和IE8,null或非对象错误

JavaScript命名空间和IE8,null或非对象错误,javascript,internet-explorer,internet-explorer-8,javascript-namespaces,Javascript,Internet Explorer,Internet Explorer 8,Javascript Namespaces,我正在开发一个应该与现代浏览器兼容的应用程序,但现在我们有一个要求,即它应该支持像IE8、IE9这样的旧浏览器 我在开发应用程序时遵循了名称空间模式。像下面这些 var myApp=myApp | |{} myApp.Globals={} 我也参考了Addy Osmani的博客 它在IE10+上运行良好,但对于IE8和IE9,变量未定义 e、 g.如果控制台记录这些名称空间,则返回undefined,并出现以下错误: myApp.Globals为空或不是对象 有没有办法在IE8和IE9中修复它们

我正在开发一个应该与现代浏览器兼容的应用程序,但现在我们有一个要求,即它应该支持像IE8、IE9这样的旧浏览器

我在开发应用程序时遵循了名称空间模式。像下面这些

var myApp=myApp | |{}

myApp.Globals={}

我也参考了Addy Osmani的博客

它在IE10+上运行良好,但对于IE8和IE9,变量未定义

e、 g.如果控制台记录这些名称空间,则返回undefined,并出现以下错误:

myApp.Globals为空或不是对象


有没有办法在IE8和IE9中修复它们

这应该行得通,你有一个演示来重现这个问题吗?IE9是我必须支持的主浏览器,我可以确认这项工作我将尝试在JSFIDLE中复制我的代码,现在就可以了