js中apply()和call()方法有用吗?用处不大我就不深究了。
1个回答
展开全部
给你举个例子
定义数组a里有3个元素1,2,3,函数add()能向调用它的数组压入一个数,这个数是3个参数之和
add.call(a,1,2,3);和add.apply(a,b);的效果都是一样的,都是向数组a压入(1+2+3)
由此看出call和apply的区别是传入参数方式的区别,
call的话是Function.call(obj,arg[0],arg[1]……arg[n]);
参数是一个对象和参数列表
而apply是array=[arg[0],arg[1]……arg[n]];
Function.apply(obj,array);
参数是一个对象和一个数组类型的对象
个人建议普通情况使用call,参数个数很多的时候才使用apply,不过主要还是看个人的编码习惯啦~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询