色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

“增強js程序代碼的健壯性”之我見大量示例代碼

在書寫和使用js程序的過程中,我們經常會遇到各種各樣的錯誤,對于一個依賴于瀏覽器的語言,我們很難完全去控制其在任何時刻都正確無誤的運行。但是我們仍需做出自己努力取增強我們書寫的js程序代碼的健壯性和安全性,盡可能減少錯誤的出現概率。
以下為本人在學習js過程總結的幾點關于增強js程序的健壯性的心得,如果您覺得對你有一點的價值,那我就達到自己的目的了,如果你覺得沒有什么意義,請您也不必扔磚頭,謝謝。
(1)對于必要的參數要判斷是否被正確的傳入。
代碼示例:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
(2)根據傳入的參數類型不同做不同處理:
例如當我們要獲取一個html元素對象時,要判斷傳入的是一個id還是一個元素對象。
代碼示例:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
(3)為參數設定默認值。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
(4)檢查傳入的參數類型。
例如:
我們要求傳入的某個參數必須為數字。
示例代碼:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
再比如可能我們需要通過參數設定一個寬度或高度值:
示例代碼:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
(5)在JS的oo編程中,如果程序要獲取當前實例名,則必須對傳入實例名做判斷。
示例代碼:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
(6)在解析xml數據之前首先要檢查傳入xml數據類型(Dom?xml字符串?文件名)及其結構的合法性。
示例代碼:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
(7)善用try...catch語句,很多時候的錯誤我們無法屏蔽,使用try...catch可以很容易的將這些錯誤過濾掉。
比如當我們在使用userData時,很多瀏覽器不支持,使用try...catch可以簡化我們的處理。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
歡迎大家多評論,提出更好更多的建議。
arg==undefined 改成 arg === undefined 可能會好些
var arg1=arg1||"default arg1";
這樣寫略有點問題
arg1是null 0 "" false都不行

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
三個等號表示類型也相等。JS在比較時不會自動轉換類型。

JavaScript技術“增強js程序代碼的健壯性”之我見大量示例代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 云南省| 桃源县| 潼南县| 四川省| 宁强县| 阜新| 武安市| 泰安市| 南宁市| 黑龙江省| 双城市| 资兴市| 眉山市| 同德县| 改则县| 安陆市| 仁怀市| 黄石市| 辽阳县| 乌海市| 正安县| 新安县| 绥化市| 萨迦县| 富阳市| 琼结县| 海南省| 南雄市| 柳林县| 安仁县| 洛扎县| 武川县| 南安市| 大丰市| 水城县| 长汀县| 浙江省| 宜川县| 宁南县| 平度市| 原平市|