zoukankan      html  css  js  c++  java
  • 【转】js 好的程序设计,应该什么时候使用 try catch 呢?

    比如在检测浏览器是否支持某些功能的时候

    if (!xx) {
      console.error('此浏览器不支持 xx 功能')
    }

    还是

    try {
      xx;
    } 
    catch(e) {
      throw new Error('此浏览器不支持 xx 功能');
    }

    上面这个列子可能并不恰当,只是抛出问题,希望大神可以全面的指点下。

    回答1:

    jquery 让 dom 操作不报错,结果现在很多前端以为 try catch 都用不着了。
    https://github.com/inexorabletash/polyfill/blob/master/es5.js
    这里有个例子,通过try catch 监测浏览器是否实现某个功能是个好习惯,如果不支持,有时候可以采用降级处理。

    那些不处理的异常的,估计也就写写网页吧,一个严肃的应用出现js报错是非常影响用户体验的事情!

    如果你无法降级处理,做法也不应该是直接抛出异常,好的体验应该是告诉用户你的应用部分功能不支持他现在的浏览器,提示他更换,抛错会让用户无所适从。

    如果是你是开发组件给别人用,最好提前在说明中声明使用了哪些新特性

    回答2:

    使用try catch会导致性能问题(重新思考javascript中的try catch

    回答3:

    try catch 必须用在你知道可能发生什么异常的的地方,而且作为直接跟用户打交道的语言,还是不要不友好的直接抛出异常。

    回答4:

    新一代模式:用户驱动的产品开发(UDD)。使用Fundebug线上24小时实时监控,有了bug第一时间修复,快速迭代就好啦。

    原文:https://segmentfault.com/q/1010000003939351

  • 相关阅读:
    redis改配置
    redis主从复制
    nginx做维护页面
    go_http
    DRF源码-views.py
    DRF教程10-关系字段
    语言特性
    DRF源码-fields.py
    python_@classmethod
    HTML5:定位
  • 原文地址:https://www.cnblogs.com/curationFE/p/is_try_catch_good.html
Copyright © 2011-2022 走看看