Javascript 对不存在的文档检查变量进行对象检查

Javascript 对不存在的文档检查变量进行对象检查,javascript,selenium,extjs,Javascript,Selenium,Extjs,我有一个用于Selenium测试的单行Js,用于检查页面是否加载完毕 true === ((typeof Ext.Ajax != 'undefined' && Ext.Ajax.isLoading()) || (jQuery != 'undefined' && jQuery.active) || document.readyState != 'complete') 所有其他Java/Selenium检查方法都与我们的IE FF和Chrome测试设置系列(cra

我有一个用于Selenium测试的单行Js,用于检查页面是否加载完毕

true  === ((typeof Ext.Ajax != 'undefined' && Ext.Ajax.isLoading()) || (jQuery != 'undefined' && jQuery.active) || document.readyState != 'complete')
所有其他Java/Selenium检查方法都与我们的IE FF和Chrome测试设置系列(crap IE)不兼容。我们花了3个月的时间尝试,所以硒检查是不可能的。 这个检查在大多数情况下都是正常的,除非在该页面中没有设置Extjs变量,否则我会遇到可怕的extis not defined异常和selenium崩溃。 有没有另一种方法可以在一个可以进行嵌套检查的行中检查变量?我在中尝试了对象检查

但当我这么做的时候

((Ext |{}).Ajax


我仍然会遇到例外情况。

在阅读了其余的帖子后,我发现了一个解决方案:

(typeof Ext != 'undefined' ? Ext : {}) 
这也应该起作用:

(window.Ext || {}).Ajax