⑴ javascript里的 try...catch...是做什麼用的啊(求救高手)
如果try括弧裡面的內容出現了異常,掛掉了
就在catch里把異常捕獲,然後執行catch里設置的容錯處理
這樣做的理由之一,聽說是因為:
java的web開發很多,如果沒有try catch的話,
出現異常就在相應的頁面把錯誤顯示出來了,這樣會暴露伺服器的一些
東西,危險的~
所以要把即使是異常這種東西都要捕獲,防止泄露,用catch里的容錯處理進行安全的處理~
⑵ 關於javascript中try...catch的理解
javascript 的錯誤捕獲機制,和 JAVA try...catch 用處差不多。
主要用於捕獲運行時的錯誤異常,在版catch 里集中處理權
try{
......
}catch(e)
{
alert(e.message)//輸出錯誤信息
}
⑶ javascript 中try {} catch{} 語句什麼意思
javascript用try...catch...語句可以測試代碼是否出錯。try塊中包含要執行的代碼,catch塊中包含當錯時要執行的代碼,這樣當try中的代碼出錯時可以得到信息並進行相應的處理。
語法格式:
try
{
//要執行的語句
}
catch(err)
{
//當try中的語句錯時要執行的語句
}
例:
<script type="text/javascript">
var txt=""
try
{
alertww("彈出一個提示信息") //故意寫錯alert,製造錯誤
}
catch(err)
{
txt+="Error description: " + err.description //顯示類型描述
alert(txt)
}
</script>
除了Error還具有下面一些主要屬性:
.description: 錯誤描述 (僅IE可用).
.fileName: 出錯的文件名 (僅Mozilla可用).
.lineNumber: 出錯的行數 (僅Mozilla可用).
.message: 錯誤信息 (在IE下同description)
.name: 錯誤類型.
.number: 錯誤代碼 (僅IE可用).
.stack: 像Java中的Stack Trace一樣的錯誤堆棧信息 (僅Mozilla可用).
⑷ javascript中的try ...catch 對象 方法 屬性...
嘩哦,兩邊都問。
就是adddlert函數沒定義,沒定義哪來的對象?
⑸ js try catch語句一般在什麼情況下使用是必須使用的嗎
當預計某段代碼可能會出錯(比如瀏覽器兼容問題)或者想故意利用這種錯誤來達版成目的(這其實是一權種偷懶的行為)時,就可以把這段代碼放入try內,然後當出現錯誤時就會自動去執行catch里的代碼。
如果程序可以做到完全無錯誤,那肯定是用不上try catch語句的,但世事難料,js作為網頁腳本語言,必須依賴於瀏覽器,而瀏覽器的種類千差萬別,除了主流的標准瀏覽器,還有各種各樣奇形怪狀的特殊瀏覽器(光是IE就能讓程序員死上千百回),即使再怎麼努力,也難免百密一疏,可以說完全無錯誤的js代碼是不存在的,因此為了保證程序的健壯性和用戶體驗,使用try catch語句還是很有必要的,而且這也是一個良好習慣。
⑹ js中,一個a函數裡面有個try catch函數,try{}裡面有定義了一個變數,我再a函數外部怎麼調用這個變數
有兩種辦法, 一是把變數定義在函數外部,也就是外部公共變數, 它可以到處使用的;二是作為函數的值來返回; 如下:
var aaa = 1; function a (){ alert(aaa); }
function a(){ var aaa=1; return aaa; }; var b = a(); alert(b);
⑺ javascript中如何使用try——catch關鍵字處理錯誤
var http=false;
if (window.ActiveXObject) //如果IE瀏覽器(所支持的ActiveXObject方法)
{
try{ //嘗試創建新的對象
http = new ActiveXObject('Msxml2.XMLHTTP');
}catch(e){ //如果不成功
try{ /再嘗試創建新的對象
http = new ActiveXObject('Microsoft.XMLHTTP');
}catch(e){} //如果還有新的方法可以繼續嘗試
}
}
⑻ javascript 中try catch 語句什麼意思
javascript用try...catch...語句可以測試代碼是否出錯。try塊中包含要執行的代碼,catch塊中包含當錯時要執行的代碼,這樣當try中的代碼出錯時可以得到信息並進行相應的處理。
語法格式:
try
{
//要執行的語句
}
catch(err)
{
//當try中的語句錯時要執行的語句
}
例:
<script type="text/javascript">
var txt=""
try
{
alertww("彈出一個提示信息") //故意寫錯alert,製造錯誤
}
catch(err)
{
txt+="Error description: " + err.description //顯示類型描述
alert(txt)
}
</script>
除了Error還具有下面一些主要屬性:
.description: 錯誤描述 (僅IE可用).
.fileName: 出錯的文件名 (僅Mozilla可用).
.lineNumber: 出錯的行數 (僅Mozilla可用).
.message: 錯誤信息 (在IE下同description)
.name: 錯誤類型.
.number: 錯誤代碼 (僅IE可用).
.stack: 像Java中的Stack Trace一樣的錯誤堆棧信息 (僅Mozilla可用).
⑼ js 拋出異常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可用).
⑽ js中try catch的執行
try{
vara=parseInt("A12B");
if(isNaN(a)||!isFinite(a)){
thrownewError(a+"isNaNorNotFinite!");
}
}catch(e){
console.error(e);
}