구문 분석해야하는 거대한 xml 데이터가 있습니다. 정의되지 않은 값은 거의 없습니다. 결과적으로 나는 TypeError: Cannot read property 'childNodes' of undefined
오류가 발생합니다. 이러한 정의되지 않은 값을 처리하고 프로그램 실행을 계속할 수있는 방법이 있습니까? 미리 감사드립니다.자바에서 정의되지 않은 값 무시
-2
A
답변
0
소스가 아닌데, 파서가 Value = parsedValue
(구문, 배열 등의 임의의 것으로 구문 분석 된 값을 할당합니다)과 같은 부분을 어디에서 작성합니까? Value = parsedValue || defaulValue
을 사용할 수 있습니다.
이것은 정의되지 않은 null 값을 처리하는 JS 바로 가기입니다. 기본값은 ""
또는 0
과 같이 간단 할 수 있습니다.
문제가 개체를 파서 다른 바로 가기 다음의 시간을 할당 한 그것을 생각 몇 가지 특성 그리워한다는 것입니다 경우 : 값이 정의되어있는 경우 childNodes
, 테스트를 얻기 전에
Value = (myObject && myObject.myProperty && myObject.myProperty.itsProperty) ? myObject.myProperty.itsProperty : undefined;
+1
이렇게하면이 오류를 방지 할 수 있지만 'Value.childNodes'를 반복 할 때 새로운 오류가 발생할 수 있습니다. – Barmar
0
합니다.
if (something) {
var children = something.childNodes;
// process children
}
코드를 게시하십시오. 그렇지 않으면 아무 것도 말하기 어렵습니다. – poohitan
구문 분석과 데이터 또는 구문 분석기를 표시하는 것이 유익합니까? – DanteTheSmith
을 호출하기 전에 'childNodes'를 호출하여 hasOwnProperty 특성을 사용하는지 여부를 확인하십시오. –