资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

call、apply、bind

网站的建设成都创新互联专注网站定制,经验丰富,不做模板,主营网站定制开发.小程序定制开发,H5页面制作!给你焕然一新的设计体验!已为成都石凉亭等企业提供专业服务。

call() 和apply()可以看作是某个对象的方法,通过调用方法的形式来间接调用函数

都是在特定作用域中调用函数,等于设置在函数体内的this的值。

call()和apply()的第一实参是要调用函数的母对象。

注:在严格模式中,call()和apply()第一个实参都会变成this的值,哪怕传入的实参是null 或undefined。

call()

call()的第一个参数是this值没有变化,其余参数都是直接传递给函数,换句话说,传递给函数的参数必须逐个列举出来。

function f() { }
var o = {};

// 要想以对象o的方法来调用函数f(),可以下面的写法
f.call(o);

// 与下面代码的功能类似:
o.m = f;
o.m();
delete o.m;

// 列举除第一个参数外的其余参数 Math.min.call(
this,1,2,3,4,5); // 1 Math.max.call(this,1,2,3,4,5); // 5 // ES6语法 ...为ES6新增的 扩展运算符 Math.min(...[1,2,3,4,5]); // 1 Math.max(...[1,2,3,4,5]); // 5

文章名称:call、apply、bind
路径分享:http://cdkjz.cn/article/dsojhhc.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220