方法类型的参数和对象类型的参数有啥差别?


先定义了一个javascript类,通过suc方法处理成功的情况,err方法处理失败的情况


 function handler(suc,err){
    this.suc = suc;
    this.err = err;
}

然后在使用时,使用handler类型创建一个myHandler的对象。


 var myHandler = new handler(function(data){
    totalCount = data;// 拿到成功返回的数据并作处理
},function(data){
    p("failed data: " + eval(data));// 输出失败的数据或者消息
});

最后在sendMsg方法中回调这个对象的suc方法和err方法


 var req = ...;
...
sendMsg(req,handler);
function sendMsg(req,handler){
    $.ajax({
        async:req.isAsy,
        type:req.type,
        url:req.url,
        data:req.data,
        dataType:req.dataType,
        timeout:req.timeout,
        success:function(resp){
            handler.suc(resp);
        },
        error:function(data){
            handler.err(data);
        },
    });
}

控制台提示:
TypeError: handler is not a constructor
为啥j使用Query时可以大量使用funtion(){}这种类型的参数?
前端小白鼠求问......

function object JavaScript

围观群众乙 9 years, 4 months ago

sendMsg(req,handler) --> sengMsg(req, myHandler)

欲与春哥比爷们 answered 9 years, 4 months ago

Your Answer