angular中的异常机制与异常之外的处理

在查阅angularjs的官方文档发现:

  文档中提到了throw异常

angular.module(‘exceptionOverride‘, []).factory(‘$exceptionHandler‘, function() {
  return function(exception, cause) {
    exception.message += ‘ (caused by "‘ + cause + ‘")‘;
    throw exception;
  };
});

同时下面也提到了捕获异常

try { ... } catch(e) { $exceptionHandler(e); }

其实这两种在js异常处理中也经常用到,但是这和js中使用的有什么不同呢,下面我们就继续考中一下,其实在angluarjs中要处理异常就必须使用service服务中的$ExceptionHander组件,引入组件后,你就可以大胆的处理不想调试的bug了,下面我就举个例子:

var module = angular.module("apple", []);
module = [ ‘$scope‘ , ‘$exceptionHandler‘ , function ( scope, exceptlogger) {....
try { 函数体} catch(e) {exceptlogger(e); }

在做项目的时候发现有如果是调用插件的方法出现错误,如uncaught exception等错误,这种捕获方式是无法捕获异常的,那么我们就应该使用另一种捕获异常的方式。

使用window.onerror的方法捕获异常:

//捕获函数体内或函数体外的错误
window.onerror = fnErrorTrap;
    function fnErrorTrap(msg,url){
               console.log( "Error: " + msg+ "URL: " + url);
    //注意下面的返回值true,表示浏览器不对这个错误进行处理,不会显示错误提示
                     return true;
     }

遇到这个异常的问题,因此特意整理了一下,不足之处,多多指正

				
时间: 2024-10-12 19:59:15

angular中的异常机制与异常之外的处理的相关文章

7.2 jmu-Java-06异常-02-使用异常机制处理异常输入 (5分)

使用异常处理输入机制,让程序变得更健壮. main方法: 输入n,创建大小为n的int数组. 输入n个整数,放入数组.输入时,有可能输入的是非整型字符串,这时候需要输出异常信息,然后重新输入. 使用Arrays.toString输出数组中的内容. 输入样例: 5 1 2 a b 4 5 3 输出样例: java.lang.NumberFormatException: For input string: "a" java.lang.NumberFormatException: For i

充分阐述java中的异常机制

java异常总结: 异常就是程序运行时出现不正常运行情况 1.异常由来: 通过java的类的形式对现实事物中问题的描述,并封住成了对象 其实就是java对不正常情况描述后的对象体现 2.对于问题的划分有两种:一种是严重的问题,一种是非严重的问题 对于严重的,java通过Error类来描述 对于Error一般不编写针对性的代码对其进行处理 对于非严重的,java通过Exception类来描述 对于Exception可以使用针对性的处理方式进行处理 3.常见的异常有:数组角标越界异常,空指针异常……

关于java中异常机制

什么是异常:异常就是程序在运行时出现的不正常情况.对于严重的情况Java通过Error类进行描述,一般不用编写代码处理:对于不严重的情况Java通过Exception描述,一般编写针对性代码对其进行处理. 异常由来:问题也是生活中一个具体的事物,也可以通过Java类的形式进行描述(比如进行运算时被除数不可以为0否则出现ArithmeticException异常,数组越界会出现ArrayIndexOutOfBoundsException等等),并封装成对象.即Java对不正常情况进行描述后的对象体

程序设计中关于异常机制的思考

程序的运行过程从来都不是一帆风顺的,运行期间会遇到各式各样的突发状况,如文件打不开.内存分配错误.数据库连不上等等.作为一个进阶过程中的编程人员,思考和处理例外状况极为重要.因为它在很大程度保证了程序的连贯性和稳定性,并为问题的发现提供支撑. 下面就本人在编程过程中有关异常的编程范式做一下总结. 一.面向过程形式 面向过程式的范式将异常的传递都交于函数的参数与返回值来处理,如: bool func ( const InType& input, OutType& output, string

JAVA基础篇三(Java,C++中的异常机制)

由于C++和JAVA有很多相似之处,又有很多细微的差别,所以在学习JAVA的过程中对两种语言进行对比学习. 1.C++的异常机制 C++中处理异常的过程是这样的:在执行程序发生异常,可以不在本函数中处理,而是抛出一个错误信息,把它传递给上一级的函数来解决,上一级解决不了,再传给其上一级,由其上一级处理.如此逐级上传,直到最高一级还无法处理的话,运行系统会自动调用系统函数terminate,由它调用abort终止程序.这样的异常处理方法使得异常引发和处理机制分离,而不在同一个函数中处理.这使得底层

java中的异常机制(编译时异常)

/ * 1 异常机制的原理 * 异常是什么:就是错误的另外一种说法; * 在java中,有一个专门模拟所有异常的类,所有的异常都必须继承这个类:Throwable; * 本质是:当程序出错以后,jvm会隐性的创建一个对象,获取错误信息,返回给程序调用处.这个是我们程序员在写程序的时候对某些高风险的操作规定了一个提示机制.我们提示这个机制,相对于系统就是一个处理异常的触发机制 * 异常机制和正常程序机制是两条平行线,一条是我们看到的main()函数里面的调用线.还有一条我们看不见的,如果程序正常情

八、java中异常机制

一.为什么要有异常处理机制? java中的异常处理机制简单的讲就是try..catch..finally的使用. 程序难免会出现错误, 如果没有异常处理机制, 那么程序员在编写代码的时候就必须检查特定的结果, 并在程序的很多地方去处理它. 有了异常处理机制后,就不必在每个方法调用处都检查, 只需要用try包裹住可能发生异常的代码段, 这样做的好处是: 1.降低了代码的复杂度,正如上面所说的,不需要每个方法调用处都去检查: 2.将“描述正常情况下应该做什么事情”和“如果出了错怎么办” 的逻辑分开:

Java中抛出的各种异常

目录(?)[-] 引子 JAVA异常 处理异常机制 捕获异常trycatch 和 finally try-catch语句 trycatch-finally语句 try-catch-finally 规则异常处理语句的语法规则 trycatchfinally语句块的执行顺序 抛出异常 throws抛出异常 使用throw抛出异常 Throwable类中的常用方法 Java常见异常 runtimeException子类 IOException 其他 自定义异常 1. 引子 try…catch…fina

C++ 异常机制分析(C++标准库定义了12种异常,很多大公司的C++编码规范也是明确禁止使用异常的,如google、Qt)

阅读目录 C++异常机制概述 throw 关键字 异常对象 catch 关键字 栈展开.RAII 异常机制与构造函数 异常机制与析构函数 noexcept修饰符与noexcept操作符 异常处理的性能分析 正文 回到顶部 C++异常机制概述 异常处理是C++的一项语言机制,用于在程序中处理异常事件.异常事件在C++中表示为异常对象.异常事件发生时,程序使用throw关键字抛出异常表达式,抛出点称为异常出现点,由操作系统为程序设置当前异常对象,然后执行程序的当前异常处理代码块,在包含了异常出现点的