代码之家  ›  专栏  ›  技术社区  ›  Majid Fouladpour

错误时,在javascript中继续下一个?

  •  8
  • Majid Fouladpour  · 技术社区  · 15 年前

    try ... catch(e) 提供与 On Error Resume Next 在VB中?

    我有一个页面,它使用了几个jquery插件以及我自己编写的一些函数。要解决所有可能的例外情况需要大量的工作。

    现在,我想告诉脚本不要中断将是致命的错误。当我使用插件时,我该怎么做?

    2 回复  |  直到 15 年前
        1
  •  10
  •   roufamatic RichardJohnn    15 年前

    对, try / catch 提供了一种捕获错误的方法,但与下一步选择处理错误时的恢复不同, 抓住 是否阻塞。

    所以在vb中,你可能会这样做:

    on error resume next
    DoSomethingUnsavory
    if err.number <> 0 then ...
    on error goto 0 ' you DO do this, right?
    

    在JS中,您可以执行以下操作:

    try {
        doSomethingUnsavory();
    }
    catch (e) {
        // handle the unsavoriness if needed
    }
    

    当然,空捕获块是邪恶的,所以不要将它们留在生产代码yadda yadda中。最好的办法是让错误发生并修复它们。快失败!

        2
  •  4
  •   Bala    11 年前

    据我所知,在javascript中没有下一个错误恢复,但是下面的模型将解决您的需求。

    try
    {
        var providerRateAvg = data.entry.gd$rating.average;
    }
    catch(e)
    {}