天天看點

js try catch 與 es5嚴格模式

try catch基本用法

try {
    //一旦發生錯誤,中止代碼段,跳轉到catch内的代碼段執行
}catch(e) {
    //捕捉錯誤,錯誤資訊在e對象中,e.name錯誤名,e.message錯誤資訊
}
           

e的6種錯誤

序号 e.name 對應資訊
1 EvalError eval()的使用與定義不一緻
2 RangeError 數值越界
3 ReferenceError 非法或不能識别的引用數值
4 SyntaxError 發生文法解析錯誤
5 TypeError 操作數類型錯誤
6 URIError URI處理函數使用不當

es5基本用法

  1. 全局使用
  2. 局部函數内使用(推薦)

’use strict'就是一個字元串,用字元串表示的原因是不會對不識别嚴格模式的浏覽器産生影響。

嚴格模式使用的意義

未使用嚴格模式:使用es3+es5的新增方法,對于es3與es5沖突的部分,使用es3的标準

使用嚴格模式:使用es3+es5的方法,對于es3與es5沖突的部分,使用es5的标準

嚴格模式的限制

  1. 不支援with, arguments.callee, function.caller;
  2. 變量指派前必須聲明;
  3. 局部this必須被指派;函數預編譯時函數内this不再指向window,為undefined,是以得先指派
  4. 拒絕重複屬性和參數。