我正在使用 Greasemonkey。如果xpathExpression
不存在,则整个脚本将停止。
document.evaluate(
xpathExpression,
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
有没有办法阻止它document.evaluate
并继续让脚本运行?
错误:
“错误:表达式不是合法表达式。”
我正在使用 Greasemonkey。如果xpathExpression
不存在,则整个脚本将停止。
document.evaluate(
xpathExpression,
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
有没有办法阻止它document.evaluate
并继续让脚本运行?
错误:
“错误:表达式不是合法表达式。”
try/catch
当您无法预测错误如何发生时,真的应该将其用作最后的手段。
考虑一下:
if (typeof xpathExpression !== "undefined" && xpathExpression !== "") {
document.evaluate(
xpathExpression,
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
}
您可以将其包装在一个try-catch
块中:
try {
document.evaluate(...);
} catch (ex) {
// something went wrong
}
实例化变量 xpathExpression 然后你可以使用:
if (xpathExpression)
document.evaluate(...);
不需要 try/catch 块