XPathExpression: evaluate() Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die evaluate()-Methode des XPathExpression-Interfaces führt einen XPath-Ausdruck auf dem angegebenen Knoten oder Dokument aus und gibt ein XPathResult zurück.

Syntax

js
evaluate(contextNode)
evaluate(contextNode, type)
evaluate(contextNode, type, result)

Parameter

contextNode

Ein Node, der den Kontext darstellt, der zur Auswertung des Ausdrucks verwendet wird.

type Optional

Gibt den Typ des Ergebnisses an, das durch die Auswertung des Ausdrucks zurückgegeben werden soll. Dies muss einer der Werte von XPathResult.Constants sein.

result Optional

Ermöglicht die Angabe eines Ergebnisobjekts, das wiederverwendet und von dieser Methode zurückgegeben werden kann. Falls dies als null angegeben wird oder die Implementierung das angegebene Ergebnis nicht wiederverwendet, wird ein neues Ergebnisobjekt zurückgegeben.

Rückgabewert

Ein XPathResult-Objekt, das das Ergebnis der Auswertung des XPath-Ausdrucks darstellt.

Ausnahmen

INVALID_EXPRESSION_ERR

Falls der Ausdruck nicht nach den Regeln des XPathEvaluator legal ist, wird eine XPathException vom Typ INVALID_EXPRESSION_ERR ausgelöst.

TYPE_ERR

Falls das Ergebnis nicht in den angegebenen Typ umgewandelt werden kann, wird eine XPathException vom Typ TYPE_ERR ausgelöst.

NAMESPACE_ERR

Falls der Ausdruck Namensraum-Präfixe enthält, die nicht vom angegebenen XPathNSResolver aufgelöst werden können, wird eine DOMException vom Typ NAMESPACE_ERROR ausgelöst.

WRONG_DOCUMENT_ERR

Falls der bereitgestellte Kontextknoten von einem Dokument stammt, das nicht vom XPathEvaluator unterstützt wird, wird eine DOMException vom Typ WRONG_DOCUMENT_ERR ausgelöst.

NOT_SUPPORTED_ERR

Falls der bereitgestellte Kontextknoten kein zulässiger Typ für einen XPath-Kontextknoten ist oder der angeforderte Typ vom XPathEvaluator nicht unterstützt wird, wird eine DOMException vom Typ NOT_SUPPORTED_ERR ausgelöst.

Beispiele

Das folgende Beispiel zeigt die Verwendung der evaluate()-Methode.

HTML

html
<div>XPath example</div>
<div>Number of &lt;div&gt;s: <output></output></div>

JavaScript

js
const xpath = "//div";
const evaluator = new XPathEvaluator();
const expression = evaluator.createExpression("//div");
const result = expression.evaluate(
  document,
  XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
);
document.querySelector("output").textContent = result.snapshotLength;

Ergebnis

Spezifikationen

Specification
DOM
# dom-xpathexpression-evaluate

Browser-Kompatibilität

BCD tables only load in the browser