• 517888.com九五至尊-517888.com九五至尊【唯一官网】》》》

  • 发布时间:2016-01-12 21:05 | 作者:yc | 来源:互联网 | 浏览:1200 次
  • 517888.com九五至尊-517888.com九五至尊【唯一官网】》》》

    略微紊乱一点点,就要用到判别句子,if else进行前提判别,话说if前提else不然,这么的判别关于写法度榜样代码的码侬已经是十分懂得不过了

    曾经,我一贯喜好用console.log(do some thing)去实行输出的类型和值,想立即看到弹出的信息,就会直接在浏览器alert()一下,这些是根基常识

    要是你感觉这个也很简单,大概会用到混杂if else前提判别句子加上try catch 来处置惩罚句子,只管用try catch能处置惩罚任何的目标,颠末throw扔一条有同伴的句子,接着catch抛出该目标或许该目标的同伴,今日咱们只说try...catch,下面的比如分袂抛出数组、时候、原型函数、数字类型等

    array = [234= = = 12.22 array + '\n' + newdate.toLocaleString() + ' \n' + fun.prototype.constructor +

    '\n' + ( is == 'number') +' \n' + call ; 'err finally'

    更正确的说,try内放一条大概发生同伴的句子当try句子起头实行并抛出同伴时,catch才实行内部的句子和对应的try内的同伴信息message何时实行finally句子,只有当try句子和catch句子实行今后,才实行finally句子,不管try抛出反常或许catch捕获都邑实行finally句子

    function trycatch () {try{

    throw new Error('koringz');

    }catch(e){

    console.log(e.message);

    }finally{

    console.log('err finally');

    }

    }

    trycatch ()//输出:// koringz// err finally

    颠末try扔出一条同伴的句子,咱们看到在catch捕获到一条同伴的的澳门菲彩国际信息// koringz,可是相同的finally也输出了// err finally只管咱们懂得try catch事情流的处置惩罚措施,可是并不懂得finally块的代码处置惩罚法度榜样,依照以往咱们对finally句子一贯的思惟措施,等于finally输出不受try和catch的束缚和束缚以下是finally的几个输出演示代码:

    function trycatch () {try{

    throw new Error('koringz');

    }finally{

    console.log('err finally');

    return console.log('new finally')

    }

    }

    trycatch ()// err finally// new finally

    如上所示,try扔一条同伴的句子,finally输出的成果是: // err finally// new finally

    function trycatch () {try{

    throw new Error('koringz');

    }catch(e){

    console.log('err finally');

    return console.log('new finally')

    }

    }

    trycatch ()// err finally// new finally

    如上所示,try扔一条同伴的句子,catch捕获到同伴输出成果同上finally // err finally// new finally

    517888.com九五至尊-517888.com九五至尊【唯一官网】》》》

    当我修正try的句子:

    function trycatch () {try{

    //

    }catch(e){

    console.log('err finally');

    return console.log('new finally')

    }

    }

    trycatch ()// 空(viod)// 空(viod)

    成果就输出都为空// 空(viod)因为try没有扔出同伴,以是catch没有捕获到反常,故输出成果就为空

    那么咱们再看www.77看下面这个事例,颠末下面的比如,大概会让你愈加地懂得try catch句子的反常处置惩罚

    try{try{throw new Error('open');

    }catch(e){

    console.info(e.message);throw e

    }finally{

    console.log('finally');

    }

    }catch(e){

    console.log('op',e.message);

    }// open// finally// op open

    当咱们在try大概引起同伴的代码块内嵌套try catch,颠末嵌套的代码块try内扔一条大概出现同伴的句子 throw new Error('open');,紧接着嵌套的try将同伴通报给嵌套的catch处置惩罚,毕竟颠末嵌套的finally运转以后,咱们看到终极一条成果// op open,原先嵌套的catch捕获的同伴信息扔给最外层catch捕获的// op open

    也等于说:任何给定的反常只会被离它迩来的关闭catch块捕获一次

    当然,在"内部"块抛出的任何新反常(因为catch块里的代码也能够抛出反常),都将会被“外部”块所捕获

    参考资料:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/try...catch

    参考资料:https://msdn.microsoft.com/library/4yahc5d8(v=vs.94).aspx

    这篇文章出自 “this is share blog” 博客,请必须保存此出处http://kosig.blog.51cto.com//

  • 相关内容

友情链接: