javascript错误类型

ECMA-262 定义了下列 7 种错误类型,简单说明如下:

  • Error:普通异常。通常与 throw 语句和 try/catch 语句一起使用。 利用属性 name 可以声明或了 解异常的类型,利用 message 属性可以设置和读取异常的详细信息。
  • EvalError: 在不正确使用 eval()方法时抛出。
  • SyntaxError:抛出语法错误。
  • RangeError:在数字超出合法范围时抛出。
  • ReferenceError:在读取不存在的变量时抛出 。
  • TypeError:当一个值的类型错误时抛出该异常。
  • URLError:由 URL 的编码和解码方法抛出。

使用 try-catch

ECMA-262 第 3 版引入了 try-catch 语旬,当 try-catch 语句中发生错误时, 浏览器会认为错误已经被处理了 ,因而不会报告错误。对于那些不要求用户懂技术,也不需要用户理解错误的 Web 应用程序,这应该说是个理想的结果。不过try-catch 能够让我们实现自己的错误处理机制。使用 try-catch 最适合处理那些无法控制的错误。假设在使用一个大型 JavaScript 库中的函数,该函 数可能会有意无意地抛出一些错误,由于我们不能修改这个库的源代码,所以大可将对该函数的调用放在try-catch语句当中,万一有什么错误发生,也好恰当地处理它们。 在明明白白地知道自己的代码会发生错误时,再使用try-catch语句就不太合适了。例如,如果传递给函数的参数是字符串而非数值,就会造成函数出错,那么就应该先检查参数的类型,然后再决定如何去做。在这种情况下,不应使用try-catch语句。作为 JavaScript 处理异常的一种标准方式。基本语法如下:

javascript中new url()属性,轻松解析url地址

1.首先写一个假的地址(q=URLUtils.searchParams&topic=api)相当于当前的window.location.href

检测类型

JavaScript 是弱类型语言,对类型没有严格限制,但是在程序中经常需要对类型进行检测和转换,下面结合示例介绍类型检测和转换的技巧。

使用 typeof 检测类型

typeof 运算符专门用来测试值的类型,特别对于原始值有效,而对于对象类型的数据,如数组、对象等,返回的值都是字符串”object”。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
alert( typeof 1);           //返回字符串"number" 
alert( typeof "a"); //返回字符串"string"
alert( typeof true); //返回字符串"boolean"
alert( typeof {}); //返回字符串"object"
alert( typeof [] ); //返回字符串"object"
alert( typeof function(){});//返回字符串"function"
alert( typeof undefined); //返回字符串"undefined"
alert( typeof null); //返回字符串"object"
alert( typeof NaN); //返回字符串"number"

//由于 null 值返回类型为 object,用户可以定义一个检测简单数据类型的一般方法。
function type(o) {
return (o === null ) ? "null" : (typeof o);
//如果是 null 值,则返回字符串"null",否则返回(typeof o)表达式的值
}

while/do while

while语句

while 语句是基本的重复操作语句。 在while语句中会先计算循环条件,如果循环条件返回值为 false,则会跳出循环结构,如果循环条件返回值为 true,则执行循环体内的语句,如果一直为true则导致死循环。

1
2
3
4
5
var n = 0;            //声明并初始化循环变量 
while (n < 10) { //循环条件
n ++; //递增循环变量
alert (n); //执行循环操作
}
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×