退出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块     

要回复问题请先登录注册