JavaScriptでXPathを使いたいとき、document.evaluate()を使うことが多いと思います。
私はむしろつい最近までdocument.evaluate()しか知らなかったのですが、MDNでXPathEvaluatorの存在を知りました。
私の現在の理解では、XPathEvaluatorもdocument.evaluateと同じようにJavaScriptでXPathを評価するのに使えます。
しかも、そのXPathEvaluatorも使い方が1通りではなく、
①XPathEvaluatorオブジェクトのevaluateメソッドを呼ぶ方法
JavaScript
1const evaluator = new XPathEvaluator(); 2const result = evaluator.evaluate("//body", document, null, XPathResult.ANY_UNORDERED_NODE_TYPE); 3console.log(result.singleNodeValue);
と、
②XPathExpressionオブジェクトを生成して、そちらのevaluateメソッドを呼ぶ方法
JavaScript
1const evaluator = new XPathEvaluator(); 2const expression = evaluator.createExpression("//body"); 3const result = expression.evaluate(document, XPathResult.ANY_UNORDERED_NODE_TYPE); 4console.log(result.singleNodeValue);
の2通りがあるようです。
そこで疑問なのですが、document.evaluate()
とXPathEvaluatorのevaluate
とXPathExpressionのevaluate
はどのように使い分けるのでしょうか。
それぞれの適する場面が知りたいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/23 08:48
2021/10/23 09:00
2021/10/23 09:01
2021/10/23 09:13