繁体   English   中英

在哪里报告Javascript错误?

[英]Where to report Javascript bugs?

想象一下:您想使用在方法中收到的XML元素来做一些事情。 所以你试试这个:

function makeNiceThings(XMLDOM){
    if(XMLDOM.getElementsByTagName("err")){
        makeReallyNiceThings(XMLDOM.getElementsByTagName("err")[0].childNodes[0].nodeValue);
    }
}

因此,JavaScript告诉您您正在尝试从空引用中调用childNodes[0] 但是,如果您尝试:

  function makeNiceThings(XMLDOM){
        if(XMLDOM.getElementsByTagName("err")[0]){
            makeReallyNiceThings(XMLDOM.getElementsByTagName("err")[0].childNodes[0].nodeValue);
        }
    }

它完美地工作。

但是,有时您会更新页面,并且两者都可以再次使用,完全没有问题。

我已经遇到过很多这样的情况,我真的很想知道是否有一个地方可以显示这些怪异的错误,以使javascript更好。 Google除了发现程序员错误的地方之外没有给我任何回报。 想法?

好吧,我在那里看不到问题。 在第一个示例中,您可能会得到并清空数组 ,这并非没有。 因此条件变为真。 而在第二个示例中,您将执行真正的工作—检查是否存在索引为0的元素。
或者,如果您真的确信这不是您的错,则应该按照Rocket Hazmat所说的做:

JavaScript本身的错误应报告给浏览器的错误跟踪器。 虽然,这可能不是JavaScript的错误。

但是很可能这是代码中的错误。 如果没有err元素,您将得到一个空数组 ,条件将被评估为true 但是没有第0个元素-这就是为什么要获得豁免。
希望那是清楚的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM