无法获取未定义或null引用的属性怎么办?

更新:当我做控制台日志arrClassList时,我确实得到了一个对象:

有人知道这里的问题吗? 它仅在IE + Edge浏览器中发生...


这不是您问题的解决方案。但是想在这里写而不是注释,以提高可读性。

  • 数组不等于对象。作为arrClassList的值共享的是对象,而.length属性对对象不起作用。因此if条件将返回false。但是,如果键的类型为字符串,则可以使用arrClassList[0]或arrClassList['abc']来超出对象值。
  • 我看到的问题与arrTemplates有关。如果是字符串,则应该可以正常工作。如果它是一个字符串数组,并且该数组中只有一个字符串,则它应该可以工作。如果它是由多个字符串组成的数组,则它将不起作用。
  • 为什么它不能在IE和Edge上正常运行,而在其他平台上却可以正常工作。我的理论是,不同的浏览器使用不同的javascript引擎,即使有小问题,这些引擎在某些情况下也会尝试使您的代码正常工作。


如下,一个简单的组件,由于不需要数据,所以data没有return


        

        

然后从该页面(只含该组件)切换到其他页面,报错了:

我要回帖

更多关于 IE报无法获取未定义 的文章