日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

JS技巧:JavaScript中try...catch和異常處理

admin
2010年8月18日 9:11 本文熱度 4135

在JavaScript可以使用try...catch來進行異常處理。例如:  try    {
    foo.bar();
}   catch  (e)   {
    alert(e.name  +   " :  "   +  e.message);
}
 
目前我們可能得到的系統異常主要包含以下6種:


EvalError: raised when an error occurs executing code in eval()
RangeError: raised when a numeric variable or parameter is outside of its valid range
ReferenceError: raised when de-referencing an invalid reference
SyntaxError: raised when a syntax error occurs while parsing code in eval()
TypeError: raised when a variable or parameter is not a valid type
URIError: raised when encodeURI() or decodeURI() are passed invalid parameters
 
上面的六種異常對象都繼承自Error對象。他們都支持以下兩種構造方法:


 new  Error();
 new  Error( " 異常信息 " );
手工拋出異常的方法如下:


  try    {
     throw   new  Error( " Whoops! " );
}   catch  (e)   {
    alert(e.name  +   " :  "   +  e.message);
}


如要判斷異常信息的類型,可在catch中進行判斷:


 try    {
    foo.bar();
}   catch  (e)   {
     if  (e  instanceof  EvalError)   {
        alert(e.name  +   " :  "   +  e.message);
    }   else   if  (e  instanceof  RangeError)   {
        alert(e.name  +   " :  "   +  e.message);
    }
     //   etc
 }


 Error具有下面一些主要屬性:


description: 錯誤描述 (僅IE可用).
fileName: 出錯的文件名 (僅Mozilla可用).
lineNumber: 出錯的行數 (僅Mozilla可用).
message: 錯誤信息 (在IE下同description)
name: 錯誤類型.
number: 錯誤代碼 (僅IE可用).
stack: 像Java中的Stack Trace一樣的錯誤堆棧信息 (僅Mozilla可用).
因此為了更好的了解錯誤信息我們可以將catch部分改為如下形式:


  try    {
    foo.bar();
}   catch  (e)   {
     if  (browserType  !=  BROWSER_IE)   {                           
        alert(
             " name:  "   +  e.name  +
             " \nmessage:  "   +  e.message  +
             " \nlineNumber:  "   +  e.lineNumber  +
             " \nfileName:  "   +  e.fileName  +
             " \nstack:  "   +  e.stack);       
    }
      else    {                   
        alert(
             " name:  "   +  e.name  +    
             " \nerrorNumber:  "   +  (e.number  &   0xFFFF )  +
             " \nmessage:  "   +  e.message " );       
    }
}


JavaScript中的throw命令事實上可以拋出任何對象,并且我們可以在catch接受到此對象。例如:


1  try    {
2     throw   new  Date();     //  拋出當前時間對象
3  }   catch  (e)   {
4    alert(e.toLocaleString());     //  使用本地格式顯示當前時間
5 }


該文章在 2010/8/18 9:11:53 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 97色伦午夜国产亚洲精品 | 欧美特黄一级大黄录像 | 精品国产一区二区三区四不卡在线 | 2025国产激情视频在线观看 | 日韩精品一区二区三区中 | 免费女人 | 亚洲欧美一区二区三区久本道 | 国产又粗又长又黄又猛又爽视 | 青草青草久热精品视频在线观看 | 国产在沙发上午睡被强 | 国产一区二区不卡免费 | 三区在线播放 | 亚洲日本欧美综合在线一 | 精品福利一区二区三区免费视频 | 国产一区二区精 | 探花在线 | 99re在线这 | 一区二区三区视 | 大地影视mv高清视频在线观看 | 国产免费观看视频 | 国产9191免费观看在线 | 亚洲国产综合一区日韩精品 | 午夜级理论片在线播放202 | www日韩免费高清视频 | 中文天堂最新版在线网 | 欧美性活一级视频 | 欧美在线伊人 | 日韩中文字幕在线观看 | 豆国产96在线 | 悠久影视网网 | 成人免费观看做爰视频胸大 | 国产人妖ts重口系列网站观看 | 91精品全国免费观看老司机 | 国产精品v日韩精品v欧美精品 | 亚洲一区二区三区国产精华液 | 精品国产福利第一区二 | 日韩大片高清播放器 | 亚洲人成网国产最新在线 | 45分钟无遮掩免费完整版高清 | 天天影院| 午夜男女爽爽爽免费播放 |