Javascript IE 8调试器不';不要因为打字错误而停止

Javascript IE 8调试器不';不要因为打字错误而停止,javascript,angularjs,internet-explorer-8,Javascript,Angularjs,Internet Explorer 8,我正在尝试在IE8中运行angular.js/jQuery应用程序。我基本上都能正常工作,但它会抛出很多控制台错误: TypeError: 'undefined' is null or not an object 开发人员工具中的这些错误没有与之关联的源位置(文件和行),并且在抛出这些错误时,调试器不会在错误时中断,即使启用了“错误时中断” 除了禁用部分代码来搜索原因外,还有什么方法可以找出原因?我在每个角度摘要周期中都会得到几十个,所以这并不像找出页面操作导致它们那样简单 它们在页面上的破坏

我正在尝试在IE8中运行angular.js/jQuery应用程序。我基本上都能正常工作,但它会抛出很多控制台错误:

TypeError: 'undefined' is null or not an object
开发人员工具中的这些错误没有与之关联的源位置(文件和行),并且在抛出这些错误时,调试器不会在错误时中断,即使启用了“错误时中断”

除了禁用部分代码来搜索原因外,还有什么方法可以找出原因?我在每个角度摘要周期中都会得到几十个,所以这并不像找出页面操作导致它们那样简单


它们在页面上的破坏并不明显,但我还没有能力测试整个过程,因此很难断定它们是良性的;即使是这样,我还是想摆脱它们;它们噪音很大,我担心在某些IE错误处理配置下用户可能会看到它们。

虽然我从未使用过它,但我听说这是对标准IE8开发工具的改进

此外,正如JJZabkar在问题评论中提到的,1.3以下的角度版本要求安装某些垫片,以便与IE8或以下版本配合使用


另一件需要注意的事情,也在他提供的链接()中描述过,就是IE8缺乏对自定义元素标记的支持,如果您不采取某些措施,这将阻碍基于元素的指令的任何使用(可能导致错误)。

您有单元测试吗?如果你能将IE8连接到karma,它可能会帮助你缩小范围?我记得Angular为IE提供了各种垫片。你是否使用了所有合适的垫片机制?另外,我发现指南()很有帮助。最后,AngularJS 1.3放弃了对IE8的支持:您可以尝试隔离发生这种情况的地方(您甚至可以查看Angular源代码),哪个函数抛出它,然后用try..catch包装它,您应该在
error
对象上有
堆栈
属性(不确定IE是否有)。当我在Android 2.3上调试(没有任何调试程序)时,我使用ajax获取所有文件,并使用try..catch进行包装,然后将结果打印到pre标记中。