调用函数时, call和apply传递参数的方式不同
以名为showHide的函数为例:
function showHide(name1, name2){
if(this.parentNode.parentNode.querySelector..."span").innerHTML = "(点击折叠)"+name1+","+name2;
}
}
call可以按照顺序传递showHide.call(this, '桐人', '亚丝娜')
apply...则是将参数放到一个数组, 统一传递showHide.apply(this, ['上条', '御坂'])
用call和apply实现相同的折叠的Demo
?...
小结:
使用call和apply调用函数时, 往往需要传递一个this, 目的是确定被调用函数showHide运行时函数内部this的指向, 以上面的demo为例, 如果调用函数