为了账号安全,请及时绑定邮箱和手机立即绑定

js里面function参数

js里面function参数

明月笑刀无情 2019-03-14 14:15:22
k = T.ajaxForm({            dataType: "json",            data: n(),            timeout: 3e5,            crossDomain: !0,            xhrFields: {                withCredentials: !0            },            beforeSubmit: function(e, t, n) {},            uploadProgress: function(e, t, n, r) {                p(".upload__percent").text(r + "%")            },            success: function(e, t) {                l(e)            },这段代码里面有三个类似beforeSubmit: function(e, t, n) {},的json格式,我调试时候发现不同function里面的e的值是不一样,这是怎么做到的呢js地址是http://shared.ydstatic.com/fa...网址是http://fanyi.youdao.com/
查看完整描述

6 回答

?
慕妹3242003

TA贡献1824条经验 获得超6个赞

就是函数呀,给它不同的值,当然不一样了


查看完整回答
反对 回复 2019-03-20
?
撒科打诨

TA贡献1934条经验 获得超2个赞

钩子函数 在不同的时候调不同的方法 传不同的值啊 类似


function test(obj){

        if(obj.before){

            obj.before({a:1});

        }

        setTimeout(obj.after || Function.prototype,1000,{c:2})

    }

    test({

        before:function(obj){

            console.log(obj);

        },

        after:function(obj){

            console.log(obj);

        }

    })


查看完整回答
反对 回复 2019-03-20
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

这个。。函数参数你想起什么名字起什么名字,名字一样不代表值就一样,值只跟调用函数传入有关,参数名只是别名


function test(a){console.log(a)}

test(1);//1


function test(b){console.log(b)}

test(1);//1


function test(a){console.log(a)}

test(2);//2

回调函数


function test(options){

  option.beofreSetTimeout(3,2,1);

  setTimeout(function(){

    option.callback(1,2,3)

  },1000)

}


test({

  beofreSetTimeout:function(e,b,r){

    console.log(e,b,r);//3,2,1

  },

  callback:function(e,b,r){

    console.log(e,b,r);//1,2,3

  }

})


查看完整回答
反对 回复 2019-03-20
?
紫衣仙女

TA贡献1839条经验 获得超15个赞

方法里面定义的,可以看下源码里面是怎么定义的


查看完整回答
反对 回复 2019-03-20
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

这里的e是函数形参标识而已,当然会依据传入函数的实参变化而不同啊(调用时机可能不同)。
这里之所以都用e作为形参标识,是因为对应的都是event形式的实参(猜测)而做的简化(毕竟这样的形参其实是对用户透明的)


查看完整回答
反对 回复 2019-03-20
  • 6 回答
  • 0 关注
  • 428 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信