2016-04-22 59 views
-1

我想借助函數來做一個簡單的JavaScript「類」。但是,我想在設置值之前驗證輸入數據是否正確。如果數據不正確,我想拋出一個新的錯誤。這是我想出的:當實例化一個函數時拋出新的錯誤

function Testing(arg1, arg2) { 
    if (arg1 !== '' && arg2 !== '') { 
    this.arg1 = arg1; 
    this.arg2 = arg2; 
    } else { 
    throw new Error('Data is empty!'); 
    } 
} 

這是允許在JavaScript中嗎?什麼會是更好的解決方案? 謝謝你的回答!

+1

因此,只有兩個參數都是空的,數據纔是無效的。 – gurvinder372

+1

這很好。你可以看看這裏的方法:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/throw。所有的例子都使用'if-else'來引發錯誤。 – AKS

+0

什麼讓你覺得它不會被允許在JS?什麼會讓你覺得用'throw'來報告一個致命的錯誤條件不是一個好的解決方案? – 2016-04-22 13:14:04

回答

0

這很好。拋出對象的構造是很好的,因爲它確保了內部的一致性。

比較而言,如果您決定例如使用特殊的字段,用戶可以忽略這樣的事實,即創建事實上失敗了。

相關問題