Javascript中try finally的细微差别

javascript中try finally语句的使用

如果在finally中使用 break; continue; return;或者throw

如下代码

            function foo() {
                try {
                    throw new error("test");//会被忽略
                } finally {
                    return 1;
                }
                return 0;
            }

            var test = foo();

 那么上述的throw中的代码会被忽略。

 如果代码中的return去掉

            function foo() {
                try {
                    throw new error("test");
                } finally {
                    //return 1;
                }
                return 0;
            }

            var test = foo();

 则异常还是会被抛出。

posted @ 2017-09-28 11:26  spchenjie  阅读(271)  评论(0编辑  收藏  举报