如何处理Cannot read 属性 'getAttribute' of undefined?

How handle Cannot read property 'getAttribute' of undefined?

如何处理错误 Cannot read 属性 'getAttribute' of undefined。我正在使用 DOMParser 获取 xml 标签的 type 属性。这个 xml 标签有时可以是 FirstTag,有时可以是 SecondTag。我实现了这个与 FirstTag 一起工作的很好,但是什么时候 SecondTag 错误显示在控制台中。

var parser = new DOMParser();
var content = '<root>' + content + '</root>';
xmlDoc = parser.parseFromString(content, "text/xml");

if( xmlDoc.getElementsByTagName("FirstTag")[0] == 'undefined' ){
    var element = xmlDoc.getElementsByTagName("SecondTag")[0];
    var type = element.getAttribute("type");
}else {
    var element = xmlDoc.getElementsByTagName("FirstTag")[0];
    var type = element.getAttribute("type");
}

最好使用xmlDoc.getElementsByTagName("FirstTag").length而不是未定义的检查

var parser = new DOMParser();
var content1 = '<root><FirstTag type="something" /></root>';
var content2 = '<root><SecondTag type="something" /></root>';

xmlDoc = parser.parseFromString(content2, "text/xml");

if( xmlDoc.getElementsByTagName("FirstTag").length == 0 ){
    var element = xmlDoc.getElementsByTagName("SecondTag")[0];
    var type = element.getAttribute("type");
}else {
    var element = xmlDoc.getElementsByTagName("FirstTag")[0];
    var type = element.getAttribute("type");
}