捕獲錯誤
try {
// code
} catch (e) {
// console.log(e)
} finally {
}
錯誤類型
- EvalError:eval()的使用與定義不一致
- RangeError:數(shù)值越界
- ReferenceError:非法或不能識別的引用數(shù)組
- SyntaxError:發(fā)生語法解析錯誤
- TypeError:操作數(shù)類型錯誤
- URIError:URI處理函數(shù)使用不當
ES5嚴格模式
"use strict";
- 不再兼容es3的一些不規(guī)則語法,使用全新的ES5規(guī)范
- 兩種用法
- 全局嚴格模式
- 局部函數(shù)內嚴格模式(推薦)
- 就是一行字符串,不會對不兼容嚴格模式的瀏覽器產(chǎn)生影響
- 不支持with、arguments.callee、func.caller,變量賦值前必須聲明,局部this必須被賦值,拒絕重復屬性和參數(shù)