关于...call(arguments, 1)
来源:1-12 几个实用的插件介绍-3
TTrz灬杰
2018-04-16 13:28:54
if(methods[method]) {return methods[method].apply(this, Array.prototype.slice.call(arguments,1))}
call参数,为什么要加上第二个参数“1”?经测试,不管加不加都不影响结果,不知道这第二个参数的意义是什么,还请讲解下,谢谢!
2回答
第一个参数是方法名,要把去掉方法名后的值作为新的参数,再次传入methods[method]这个方法中。老师在课程中有对这段代码进行分析,建议你再看一遍吧。
怎么都被占用了呢
2018-04-16
第二个参数是用于slice的,从下标为1的位置开始截取arguments,直到数组结束的所有值,将作为参数传入methods[method]这个方法中。
相似问题