XMLNode - 범위가 지정된, 전역
XMLNode API는 XML 노드의 값을 쿼리하는 메서드를 제공합니다. XMLNodes는 XML 문자열을 포함하는 XMLDocument2 개체에서 추출됩니다.
XMLNode 개체의 독립 실행형 인스턴스를 만들기 위한 생성자는 없습니다. 대신 기존 문서에 노드를 추가하는 XMLDocument2의 createElement() 메서드를 사용합니다.
범위가 지정된 XMLNode - getAttribute(문자열 속성)
속성 값을 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 속성 | 문자열 | 속성의 이름입니다. |
| 유형 | 설명 |
|---|---|
| 문자열 | 속성의 값입니다. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.getAttribute('att'));
출력:
xxx
범위가 지정된 XMLNode - getAttributes()
노드의 속성을 값이 있는 속성으로 포함하는 객체를 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 객체 | 이름이 속성이고 값이 속성의 값인 이름-값 쌍을 포함합니다. |
범위가 지정된 XMLNode - getChildNodeIterator()
자식 노드 목록을 탐색하는 데 사용할 수 있는 XMLNodeIterator 개체를 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| XMLNodeIterator | 노드 반복기 객체입니다. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
var iter= node.getChildNodeIterator();
gs.info(iter.hasNext());
범위가 지정된 XMLNode - getFirstChild()
노드의 첫 번째 자식 노드를 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| XMLNode | 노드의 첫 번째 하위 노드입니다. |
var xmlString = "<test>" +
"<one>" +
"<two att=\"xxx\">abcd1234</two>" +
"<three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
"<two>another</two>" +
"</one>" +
"<number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
gs.info(node.getFirstChild());
<two att="xxx">abcd1234</two>범위가 지정된 XMLNode - getLastChild()
노드의 마지막 하위 노드를 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| XMLNode | 노드의 마지막 하위 노드입니다. |
var xmlString = "<test>" +
"<one>" +
"<two att=\"xxx\">abcd1234</two>" +
"<three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
"<two>another</two>" +
"</one>" +
"<number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
gs.info(node.getLastChild());
<two>another</two>범위가 지정된 XMLNode - getNodeName()
노드의 이름을 가져옵니다. 노드의 이름은 노드 유형에 따라 결정됩니다. 문서 요소 노드의 이름은 #document입니다. 텍스트 노드의 이름은 #text입니다. 요소 노드의 이름은 요소의 이름입니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 노드의 이름입니다. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.getNodeName());
출력:
two
범위가 지정된 XMLNode - getNodeValue()
노드의 값을 가져옵니다. 노드의 값은 노드 유형에 따라 결정됩니다. Element 및 document-element 노드는 null을 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 노드의 값입니다. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.getNodeValue());
출력:
null
범위가 지정된 XMLNode - getTextContent()
현재 노드의 텍스트 내용을 가져옵니다. 노드의 텍스트 내용은 모든 노드의 하위 텍스트 노드로 구성됩니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 현재 노드의 텍스트 내용입니다. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmldoc = new XMLDocument2();
xmldoc.parseXML(xmlString);
var node = xmldoc.getNode('//one/two');
gs.info(node.getTextContent());
출력:
abcd1234
범위가 지정된 XMLNode - hasAttribute(String 특성)
노드에 지정된 속성이 있는지 확인합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 속성 | 문자열 | 검사할 속성의 이름입니다. |
| 유형 | 설명 |
|---|---|
| 부울 | 노드에 속성이 있는 경우 True입니다. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//two');
gs.info(node.hasAttribute('att'));
출력:
true
범위가 지정된 XMLNode - isCDATANode()
CDATA 노드가 별도의 노드로 유지되는지 여부를 나타냅니다.
이 범위가 지정된 XMLDocument2 - setEnableCDATAReporting(부울 사용) 메서드를 사용하여 CDATA 노드가 유지되고 텍스트로 처리되지 않도록 합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | 쿼리된 노드가 CDATA인지 일반 텍스트인지를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
|
다음 예제에서는 를 사용하여 범위가 지정된 XMLDocument2 - setEnableCDATAReporting(부울 사용)CDATA 보고를 사용하도록 설정된 XML 문자열을 구문 분석하는 방법을 보여 줍니다. 이 코드에서는 isCDATANode() 를 사용하여 XML 문자열에서 쿼리된 첫 번째 노드가 CDATA 노드임을 보여 줍니다.
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>"+
" <four><![CDATA[another]]>element</four>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.setEnableCDATAReporting(true); // Enables CDATA reporting
xmlDoc.parseXML(xmlString);
var content = xmlDoc.getFirstNode('/test/one/four');
gs.info(content.getFirstChild().isCDATANode());
출력:
true
범위가 지정된 XMLNode - toString()
현재 노드의 문자열 값을 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 현재 노드의 문자열 값입니다. |
var xmlString = "<test>" +
" <one>" +
" <two att=\"xxx\">abcd1234</two>" +
" <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
" <two>another</two>" +
" </one>" +
" <number>1234</number>" +
"</test>";
var xmlDoc = new XMLDocument2();
xmlDoc.parseXML(xmlString);
var node = xmlDoc.getNode('//one');
gs.info(node.toString());
<one>
<two att="xxx">abcd1234</two>
<three att="yyy" boo="yah">1234abcd</three>
<two>another</two>
</one>