XPath調査結果

DOMツリーに対してXPathを実行

document.evaluate(xpathExpression, contextNode, namespaceResolver, resultType, result);
引数 意味
xpathExpression XPath
contextNode 文脈ノード
namespaceResolver 名前空間解決関数。HTML文書の場合はnull
resultType 戻り値の型。以下に挙げる定数。
result 再利用するXPathResultオブジェクト。ない場合はnull
戻り値の型
XPathResult.ANY_TYPE (0)
式の評価によって導き出される適切な型を格納した結果の集合。
XPathResult#resultType 結果の型。以下のいずれかの型となり、それぞれの型の場合のアクセス方法で実行結果にアクセスできる。

NUMBER_TYPE (数値)
STRING_TYPE (文字列)
BOOLEAN_TYPE (真偽値)
UNORDERED_NODE_ITERATOR_TYPE (ノード集合)
XPathResult.NUMBER_TYPE (1)
数値
XPathResult#numberValue 実行結果の値
XPathResult.STRING_TYPE (2)
文字列
XPathResult#stringValue 実行結果の値
XPathResult.BOOLEAN_TYPE (3)
真偽値
XPathResult#booleanValue 実行結果の値
  • XPathResult.UNORDERED_NODE_ITERATOR_TYPE (4)
  • XPathResult.ORDERED_NODE_ITERATOR_TYPE (5)
XPathResult#iterateNext() 現在のノード, 反復終了時はnull
文書が変異した場合はNS_ERROR_DOM_INVALID_STATE_ERR例外が発生
XPathResult#invalidIteratorState 反復処理中に文書が変異した場合にtrue
  • XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE (6) |
  • XPathResult.ORDERED_NODE_SNAPSHOT_TYPE (7) |
XPathResult#snapshotItem(i) マッチしたi番目の要素
XPathResult#snapshotLength マッチした要素数
  • ANY_UNORDERED_NODE_TYPE (8)
  • FIRST_ORDERED_NODE_TYPE (9)
XPathResult#singleNodeValue マッチした要素, 空の場合はnull


参考