对象调用函数时的Javascript或语句
我想看看是否有一个名称(这是一个糟糕的做法?):对象调用函数时的Javascript或语句,javascript,function,parameters,Javascript,Function,Parameters,我想看看是否有一个名称(这是一个糟糕的做法?): var callback = function(error, data) { var method = error ? 'handleError' : 'handleSuccess'; object[method](error || data, action); }; 如果有错误,object.handleError将使用error和action,假设我不关心error If error之后的任何其他参数 另一方面,如果没有错误
var callback = function(error, data) {
var method = error ? 'handleError' : 'handleSuccess';
object[method](error || data, action);
};
如果有错误,object.handleError将使用error和action,假设我不关心error If error之后的任何其他参数
另一方面,如果没有错误,object.handleSuccess将使用数据和操作,这是一个错误。这是一种不错的做法,但在这种情况下,我认为写出if/else更干净,因为您无论如何都要做两次比较检查。这样,您也可以省略第二个参数
var callback = function(error, data) {
if(error){
object.handleError(error);
else{
object.handleSuccess(data,action);
}
};
如果我没有弄错的话,他的意图是在第一种情况下只传递error对象,而忽略其余的参数。感谢@Austin,只是为了删除else语句,您认为
var callback=function(error,data){If(error){return object.handleError(error);}return object.handleSuccess会更好(数据、动作);};