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 der XPathExpression
-Schnittstelle führt einen XPath-Ausdruck auf dem angegebenen Knoten oder Dokument aus und gibt ein XPathResult
zurück.
Syntax
evaluate(contextNode)
evaluate(contextNode, type)
evaluate(contextNode, type, result)
Parameter
contextNode
-
Ein
Node
, der den Kontext repräsentiert, der zur Auswertung des Ausdrucks verwendet werden soll. type
Optional-
Gibt den Typ des Ergebnisses an, das durch die Auswertung des Ausdrucks zurückgegeben werden soll. Dies muss einer der
XPathResult.Constants
sein. result
Optional-
Ermöglicht die Angabe eines Ergebnisobjekts, das wiederverwendet und von dieser Methode zurückgegeben werden kann. Wenn es 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 repräsentiert.
Ausnahmen
INVALID_EXPRESSION_ERR
Wenn der Ausdruck gemäß den Regeln des XPathEvaluator
nicht legal ist, wird eine XPathException
vom Typ INVALID_EXPRESSION_ERR
ausgelöst.
TYPE_ERR
Falls das Ergebnis nicht in den angegebenen Typ konvertiert werden kann, wird eine XPathException
vom Typ TYPE_ERR
ausgelöst.
NAMESPACE_ERR
Wenn der Ausdruck Namespace-Präfixe enthält, die vom angegebenen XPathNSResolver
nicht aufgelöst werden können, wird ein DOMException
vom Typ NAMESPACE_ERROR
ausgelöst.
WRONG_DOCUMENT_ERR
Wenn der bereitgestellte Kontextknoten aus einem Dokument stammt, das vom XPathEvaluator
nicht unterstützt wird, wird eine DOMException
vom Typ WRONG_DOCUMENT_ERR
ausgelöst.
NOT_SUPPORTED_ERR
Wenn der bereitgestellte Kontextknoten nicht als XPath-Kontextknoten zulässig ist oder der Anforderungstyp 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
<div>XPath example</div>
<div>Number of <div>s: <output></output></div>
JavaScript
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 Standard # dom-xpathexpression-evaluate |
Browser-Kompatibilität
BCD tables only load in the browser