JavaScript中try catch finally 使用
在IE泄漏中處理是遇到的方法,通過try..catch..finally方式:
<DIV class=dp-highlighter>
<DIV class=bar>
<DIV class=tools>Java代碼 <A title=復制代碼 onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="/misc/goto?guid=4958346284570877790"><IMG alt=復制代碼 src="/images/icon_copy.gif"></A></DIV></DIV>
<OL class=dp-j>
錯誤處理結構:
<DIV class=dp-highlighter>
<DIV class=bar>
<DIV class=tools>Java代碼 <A title=復制代碼 onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="/misc/goto?guid=4958346284570877790"><IMG alt=復制代碼 src="/images/icon_copy.gif"></A></DIV></DIV>
<OL class=dp-j>
tryStatements }
catch(exception){
catchStatements}
finally{
finallyStatements } </PRE>
參數:
tryStatement
必選項。可能發生錯誤的語句。
exception
必選項。任何變量名。exception的初始化值是扔出的錯誤的值。
catchStatement
可選項。處理在相關聯tryStatement中發生的錯誤的語句。
finallyStatements
可選項。在所有其他過程發生之后無條件執行的語句。
說明:
如果在tryStatements中發生了一個錯誤,則程序控制被傳給catchStatements來處理 ,錯誤處理發生之后,將會執行finallyStatements中語句。
<DIV class=dp-highlighter>
<DIV class=bar>
<DIV class=tools>Java代碼 <A title=復制代碼 onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="/misc/goto?guid=4958346284570877790"><IMG alt=復制代碼 src="/images/icon_copy.gif"></A></DIV></DIV>
<OL class=dp-j>
執行上述代碼,發現在1返回return前將會執行到finally,如果其中有return那么函數執行返回,否則執行到1處return返回。如果注釋掉3將會返回什么吶?
catch中e.name錯誤類型:
- 1. EvalError:eval()的使用與定義不一致
- 2. RangeError:數值越界
- 3. ReferenceError:非法或不能識別的引用數值
- 4. SyntaxError:發生語法解析錯誤
- 5. TypeError:操作數類型錯誤
- 6. URIError:URI處理函數使用不當 </UL>