`
san_liuhongbin
  • 浏览: 20376 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

javascript错误处理(2)

阅读更多

try...catch 语句.

 1. nested try...catch语句.

    使用场景: 在try...catch语句中的catch子句中,也会发生错误,此时,就可以使用嵌套try...catch语句。

 eg:

<script type="text/javascript">
    	try{
    		eval("a ++ b");
    	}catch(oException){
    		alert("An Exception occurred.");
    		try{
	    		var aErrors = new Arrary(100000000000000000000000);
	    		aErrors.push(exception);
	    	}catch(oException2){
	    		alert("Another exception occurred.");
	    	}
    	}finally{
    		alert("all done!");	
    	}   		
</script>

 

Error 对象

类似于java有个可用于抛出的基类Exception, javascript有个Error基类用于抛出, Error有以下特性:

name----表示错误类型的字符串

message----实际的错误信息

eg:

<script type="text/javascript">
	try{
		window.nonExistenFunction();
		alert("Method completed!");
	}catch(oException){
		alert("An exception occurred: "+oException.message);
	}finally{
		alert("End of try...catch test.");
	}		
</script>

 

判断错误类型

尽管每个try...catch语句只能有一个catch子句,但判断抛出的错误的类型的方法却有几种。

第一种方法是使用Error对象的name特性

eg:

	try{
		eval("a ++ b");
	}catch(oError){
		if(oError.name=='SyntaxError'){
			alert("Syntax Error: "+oError.message);
		}else{
			alert("An unexception error occurred: " + oError.message);
		}
	}

 

第二种方法是使用instanceof操作符,并使用不同错误的类名

eg:

	try{
		eval("a ++ b");
	}catch(oError){
		if(oError instanceof SyntaxError){
			alert("Syntax Error: "+oError.message);
		}else{
			alert("An unexception error occurred: " + oError.message);
		}
	}

 

 

抛出异常

ECMAScript 第三版还引入了throw语句,用于有目的地抛出异常:throw error_object;

error_object 可以是字符串,数字,布尔值或者是实际对象,也可抛出一个Error对象。

实际的说,正常的执行不能继续时,应该抛出一个异常

eg:

	function addTwoNumbers(a,b){
		if(arguments.length < 2){
			throw new Error("Two numbers are required.");
		}else{
			return a+b;
		}
	}
	
	try{
		result = 	addTwoNumbers(90);
	}catch(oError){
		alert(oError.message);
	}

 

web browser不生成Error对象(它总生成一个较精确的Error对象),所以使用前面的技术就可以区分web browser抛出的错误和开发人员抛出的错误

eg:

	function addTwoNumbers(a,b){
		if(arguments.length < 2){
			throw new Error("Two numbers are required.");
		}else{
			return a+b;
		}
	}
	
	try{
		result = 	addTwoNumbers(90,parseInt(z));
	}catch(oError){
		if(oError instanceof SyntaxError){
			alert("Syntax Error: "+oError.message);
		}else if(oError instanceof Error){
			alert(oError.message);
		}
	}

注意: instanceof Error必须是if语句中最后一个条件,因为所有其他的错误类都继承于它.

 

0
0
分享到:
评论

相关推荐

    JavaScript错误处理.docx

    JavaScript错误处理.docx

    24、JavaScript错误处理与调试工具

    本篇将深入探讨JavaScript错误处理和调试工具的重要知识点。 首先,我们要了解JavaScript中的错误类型。JavaScript定义了一系列内置的Error对象,包括TypeError、ReferenceError、RangeError、SyntaxError等,这些...

    JavaScript错误与异常处理

    JavaScript错误与异常处理是编程实践中不可或缺的部分,尤其是在JavaScript这样的脚本语言中,错误处理显得尤为重要。JavaScript中的错误分为两种主要类型:语法错误和运行错误。语法错误,也称为错误(Error),是...

    JavaScript错误处理

    JavaScript错误处理是编程过程中不可避免的部分,它涉及到识别、捕获和响应代码运行时可能出现的问题。本文将详细探讨JavaScript中的错误分类、处理机制以及如何有效地管理错误。 首先,我们来了解JavaScript中的...

    JavaScript错误处理和堆栈追踪浅析.doc

    JavaScript错误处理和堆栈追踪浅析.doc

    深入分析javascript中的错误处理机制

    为了确保程序的健壮性,JavaScript提供了一套完整的错误处理机制,使得开发者能够捕获、处理和恢复从语法错误到逻辑错误的各种问题。本文将深入探讨JavaScript中的错误处理机制,主要包括错误对象、错误类型以及如何...

    JavaScript程序设计课件:错误处理与代码调试.pptx

    2、错误处理 遇到上述错误情况时,JavaScript引擎会抛出一个错误对象,我们可以利用try…catch语句来捕获错误对象,进而进行后续处理,我们刚才的代码稍作改动。 6.5.1 错误处理 示例 改进后的代码运行时,错误仍然...

    JavaScript异常处理

    JavaScript异常处理是编程中至关重要的一个环节,它用于管理和修复代码执行过程中可能出现的错误或异常情况。异常处理机制使得程序能够在遇到错误时不会立即终止,而是有机会进行适当的恢复或者给出反馈,增强了程序...

    错误处理的艺术:精通JavaScript中的异常管理

    ### 错误处理的艺术:精通JavaScript中的异常管理 在当今高度依赖互联网的世界中,JavaScript(简称JS)作为一种轻量级且强大的编程语言,在构建交互式的Web应用程序方面扮演着至关重要的角色。JavaScript的主要...

    JavaScript基础语法-控制流与错误处理.pdf

    JavaScript基础语法——控制流与错误处理

    JavaScript错误处理操作实例详解

    JavaScript错误处理是编程中至关重要的一个环节,它确保了程序在遇到问题时能够优雅地运行,而不是突然崩溃。本文将详细介绍JavaScript中常见的错误处理机制、错误类型及其处理方法。 首先,我们关注的是`try-catch...

    深化分析javascript中的错误处理机制_.docx

    在JavaScript编程中,错误处理是不可或缺的一部分,因为它能够帮助开发者识别、调试和修复程序中的问题,从而提供更稳定、更可靠的用户体验。本文将深入探讨JavaScript中的错误处理机制,主要包括错误对象、错误的...

    WEB开发 之 JavaScript 错误 - Throw、Try 和 Catch.docx

    JavaScript错误处理是WEB开发中的一个重要方面。在JavaScript中,错误可能来自语法错误、拼写错误、服务器或用户的错误输出等多种原因。因此,了解如何正确地处理错误是非常重要的。 在JavaScript中,有三种主要的...

    全面了解javascript中的错误处理机制_.docx

    JavaScript中的错误处理机制是编程过程中不可或缺的一部分,它确保了程序在遇到问题时能够优雅地处理并提供反馈。错误处理通常涉及到捕获、处理和记录错误,以防止程序意外终止,同时提高用户体验。 首先,我们来看...

    JavaScript标准参考教程

    《JavaScript标准参考教程》是一本全面介绍JavaScript编程语言的书籍,其内容涵盖了从基础语法、数据类型、函数到高级特性如数组操作、错误处理、编程风格等各个方面的知识。阮一峰作为作者,将多年的经验和网络资料...

    浅谈javascript错误处理

    首先,JavaScript错误可以分为多种类型。最基础的是语法错误(SyntaxError),这是由于代码不符合JavaScript语法规则而引发的,例如拼写错误、遗漏的括号或分号等。运行时错误(TypeError)则是因为尝试对非预期类型...

    浅谈如何优雅处理JavaScript异步错误

    - 使用 `try/catch` 可以提供更直观的错误处理,尤其是在配合 `async/await` 时。 - `then()` 链式处理允许在多个操作之间传递错误,简化了错误流控制。 **缺点:** - `try/catch` 不能捕获所有异步错误,需要额外...

Global site tag (gtag.js) - Google Analytics