我有一个Foo这样的构造函数:
function Foo(params) {
this.x = params.x + 5;
...
}
Foo是这样调用的:
var foo = new Foo(someObject);
我想检查paramsinFoo的构造函数的内容,如果有问题(例如params.x不是数字,或者params.y是undefined),我想foo成为null(这意味着Foo对象没有被创建)。
我猜,一种选择是在构造函数中抛出一个异常并用new Foo(someObject)with包装调用try..catch(或创建一个类似的函数makeFoo)。
你会建议如何处理这个问题?