1.throw抛异常
throw抛出异常信息,程序也会终止执行
throw后面跟的是错误提示信息
Error对象配合throw使用,能够设置更详细的错误信息
2.try/catch捕获错误信息
try...catch用于捕获错误信息
将预估可能发生错误的代码写在代码段中
如果try代码段中出现错误后,会执行catch代码段,并截获到错误信息
finally不管是否有错误,都会执行
3.debugger
4.改变this的指向
我们可以通过3个方法动态指定普通函数中this的指向
1.call()
语法:fun.call(在fun函数运行时指定的this值,传递的其他参数)
返回值就是函数的返回值,因为它就是调用函数
2.apply()
语法:fun.apply(在fun函数运行时指定的this值,传递的其他参数,必须包含在数组里面)
返回值就是函数的返回值,因为它就是调用函数
因此apply主要跟数组有关系,比如使用Math.max()求数组的最大值
3.bind()
bind()方法不会调用函数,但是能改变函数内部this的指向
语法:fun.bind(在fun函数运行时指定的this值,传递的其他参数)
返回由指定的this值和初始化参数改造的原函数拷贝(新函数)
因此当我们只是想this指向,并且不想调用这个函数的时候,可以使用bind,比如改变定时器内部的this指向