Javascript基礎(四)
阿新 • • 發佈:2018-12-10
十. try catch語句(測試程式碼中的錯誤,在 IE5+、Mozilla 1.0、和 Netscape 6 中可用)
也可使用onerror
事件捕獲錯誤(老式方法,Netscape3以後的版本可用)
try{
throw 12345;//操作符,用於隨時丟擲錯誤,必須指定一個值
//可能會出錯的程式碼
}catch(error){
//在錯誤發生時怎麼處理,會接受到包含錯誤資訊的物件,不用也要起名字
}finally{
//可選子句,無論如何,都會執行finally語句
}
try中任何程式碼發生錯誤,會立即退出程式碼執行過程,然後接著執行catch塊。catch接收到的物件資訊因瀏覽器不同而不同,但都會包含message
錯誤型別
當錯誤發生時,會丟擲相應的錯誤物件,即Error.name
- Error:基型別,其他錯誤都繼承該型別,主要供開發人員丟擲自定義錯誤,很少見
- EvalError:
eval()
函式使用異常,即使用方式與定義的不相同 - RangeError:數值超出了相應範圍時觸發
- ReferenceError:找不到物件時觸發,在訪問不存在的變數時會出現這種錯誤
- SyntaxError:把語法錯誤的JS字串傳入
eval()
,eval()計算 JavaScript 字串,並把它作為指令碼程式碼來執行。 - TypeError:在JS中經常用到
- URIError:在使用encodeURI()或decodeURI(),而URI格式不正確時,就會導致URIError錯誤,很少見
十一. 自定義屬性
自定義屬性就是定義元素本身不存在的屬性。JS可以為任何HTML元素新增屬性,且如同元素的本來屬性操作
js中DOM的自定義屬性方法有:
- 設定自定義屬性:setAttribute
- 獲取自定義屬性:getAttribute
- 移出自定義屬性:removeAttribute
自定義屬性-索引值 參考網址 例項
十二. setTimeout和setInterval的區別(都屬於window全域性物件)
setTimeout(延遲毫秒數執行程式碼)
window.setTimeout("js程式碼,函式等",毫秒數);
clearTimeout():用於清除setTimeout()方法的函式程式碼
setInterval(間隔指定的毫秒數迴圈執行程式碼)
window.setInterval("js程式碼,函式等",毫秒數);
clearInterval():用於清除setInterval()方法執行的函式
兩者都返回定時器物件識別符號