我对javascript中的函数参数有点困惑

我对javascript中的函数参数有点困惑,javascript,extjs,Javascript,Extjs,我在ExtJS中有以下代码 form.submit({ success: function(form, action) { Ext.Msg.alert('Success', action.result.message); }, failure: function(form, action) { Ext.Msg.aler

我在ExtJS中有以下代码

   form.submit({
                success: function(form, action) {
                   Ext.Msg.alert('Success', action.result.message);
                },
                failure: function(form, action) {
                    Ext.Msg.alert('Failed', action.result ? action.result.message : 'No response');
                }
submit像一个以两个参数为参数的函数,还是我对它的理解不正确

是不是lyk submit是一个以两个参数为参数的函数 或者我对它的理解是错误的

否。
submit
是一个函数,它接受一个
对象
作为其参数,该对象可能具有
成功
失败
方法

它将像在这个伪代码中一样被调用

function submit(obj) {
    if (some condition) {
        obj.success();
    } else obj.failure();
}

正如amit joki所说,如果您真的想了解代码,那么可以浏览Ext.form.Panel类,这只是一个伪代码

它基本上会向表单面板配置中指定的url发送ajax请求 若调用成功,则调用成功函数,否则调用失败函数

例如,假设我有一个表单Objec:

var form = Ext.create('Ext.form.Panel', {
    url: 'addProduct.jsp'
    ..
});

form.submit({
    success: function(form, action) {
        Ext.Msg.alert('Success', action.result.message);
    },
    failure: function(form, action) {
        Ext.Msg.alert('Failed', action.result ? action.result.message : 'No response');
    }
});
执行form.submit时,它将向在此处创建表单对象addProduct.jsp时指定的url发送一个ajax请求。如果ajax调用成功,则将在其他位置执行成功回调函数 将执行失败回调


在这里,我们向olny传递了一个提交函数的参数,该函数是一个对象,它有两个属性success和failure…amit joki已经澄清了这一点。{success:function(form,action){Ext.Msg.alert('success',action.result.message);},failure:function(form,action){Ext.Msg.alert('Failed',action.result?action.result.message:'No response');}那么提交中是什么