我有一個Foo
構造是這樣的:如何在Javascript中處理錯誤的構造函數參數?
function Foo(params) {
this.x = params.x + 5;
...
}
Foo
被稱爲像這樣:
var foo = new Foo(someObject);
我想檢查的params
的內容Foo
的構造函數,如果事情是錯的(例如,params.x
不是數字,或者params.y
是undefined
),我希望foo
爲null
(這將意味着Foo
對象未被創建)。
我想一個選擇是在構造函數中拋出一個異常,並將new Foo(someObject)
的調用換成try..catch
(或者創建一個像makeFoo
這樣的函數)。
你會建議如何處理這個問題?
[如果javascript構造函數返回失敗,應該返回什麼](http://stackoverflow.com/questions/5149619/what-should-a-javascript-constructor-return-if-it-fails) – 2012-04-07 12:17:22