[英]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.