. 每一个函数都包含两个非继承而来的函数: call,apply.  在特定的作用域中调用函数,  实际上相当于   函数体内this对象的值     .call,apply  用途之一就是传递参数.    实际上强大的地方是  :   扩大函数的作
原创 2016-07-22 16:32:45
801阅读
# call & apply > callapply 的区别是什么,哪个性能更好一些
转载 2020-06-02 23:53:00
65阅读
2评论
call 调用 apply 应用 bind 关联,绑定 call(),apply(),bind()都是用来重定义this这个对象的 使用call()(或apply())来扩充作用域的最大好处,就是对象不需要与方法有任何耦合关系。 每个函数都包含两个非继承而来的方法:apply()和call()。这两 ...
转载 2021-08-26 20:08:00
103阅读
2评论
call()、apply()、bind() 都是用来重定义 this 这个对象的 call接收参数列表,apply接收数组参数,bind和call一样,但是返回值是函数需要再调用才执行 var f1 = function(a,b) { console.log(a+b); } var f2 = fun ...
转载 2021-08-10 15:30:00
155阅读
2评论
  这里推荐一本设计模式的javascript书. 《JavaScript设计模式与开发实践》。作者是腾讯大牛曾探。  我每天都会在里面抽出我受到的理解,作为我的读书笔记。今天就昨天讲的this里面涉及到的callapply进行书中的讲解。     Function.prototype.call 和 Function.prototype.apply 都是非常常用的方法。它们的作用一模 一样,区别
原创 2021-05-13 21:36:33
221阅读
apply()、call()、bind() 每个Function对象都存在apply()、call()、bind()方法,其作用都是可以在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖以运行的作用域。 使用 apply()、call()、bind()都能改变函数对象的this
原创 2022-05-28 00:56:03
95阅读
callcall和apply就是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向。function a(name) { console.log(name, 111) console.log(this, 222) }a('fanfei')使用call改变this ...
原创 2021-11-19 13:48:02
125阅读
貌似说 一个对象没有方法处理数据, 一个方法没有对象数据,这样可以两者臭味相投,就好了。----一个函数借助另外一个对象的属性通过自己的方法,从而达到某种改变或者输出数据的目的。2015-5-4 --就是一个函数.call(对象a) 对象a的属性会被运动到这个函数中,自然会输出某个值或者改变点什么东...
转载 2015-05-04 12:52:00
117阅读
2评论
call 1调用函数 2改变函数内的this指向 3实现继承: 构造函数+ 原型对象--组合继承 var obj = { uname: 'lili' } function fn(a, b) { console.log(a + b); console.log(this); } fn.call(); / ...
转载 2021-09-22 21:35:00
101阅读
2评论
非常好的一排文章跳转链接this指向问题,手写bind,apply,call
原创 2022-11-18 00:11:27
31阅读
this、applycall、bind
原创 2022-12-17 00:13:01
114阅读
一、作用call 、apply 、bind 作用是改变函数执行时的上下文,简而言之就是改变函数运行时的this指向那么什么情况下需要改变this的指向呢?下面举个例子var name="lucy"; var obj={ name:"martin", say:function () { console.log(this.name);
原创 2024-06-11 09:45:24
43阅读
一、作用call 、apply 、bind 作用是改变函数执行时的上下文,简而言之就是改变函数运行时的this指向那么什么情况下需要改变this的指向呢?下面举个例子var name="lucy"; var obj={ name:"martin", say:function () { console.log(this.name);
原创 2024-08-24 22:22:46
48阅读
JavaScript中对于call(),apply(),bind()的理解 1、callapply、bind三者都是用来重定义this这个对象的,其中bind返回的是一个新的函数,所以必须要调用才会执行。 2、callapply、bind三者的传参情况 三个函数的第一个参数都是this指向的对象 ...
转载 2021-04-23 15:14:00
198阅读
call 定义:调用一个对象的一个方法,以另一个对象替换当前对象,传递多个参数
转载 2020-09-19 14:00:00
166阅读
2评论
看这个apply真正应用。bind这是一个绑定时间的函数 var bind=function(object,type,fn){ if(object.attachEvent){//IE浏览器 object.attachEvent("on"+type,(function(){ return functi
转载 2016-04-29 15:40:00
80阅读
2评论
this 的指向在 ES5 中,其实 this 的指向,始终坚持一个原理:this 永远指向最后调用它的那个对象,来,跟着我朗读三遍:this 永远指向最后调用它的那个对象,this 永远指向最后调用它的那个对象,this 永远指向最后调用它的那个对象。记住这句话,this 你已经了解一半了。下面我们来看一个最简单的例子:例 1:var name = "windowsName"; func
原创 2024-04-22 17:53:58
29阅读
Function.prototype.applyapply接受2个参数, 第1个指定了函数体内this对象的指向, 第2个参数为一个数组或者Array like的集合.apply方法吧这个集合中的元素作为参数传递给被调用的函数.var func = function(a, b, c) { console.log([a,b,c]); // [1,2,3]}func.a...
原创 2021-08-13 10:23:20
131阅读
call bind apply的作用都是可以进行修改this指向callapply的区别在于参数传递的不同 bind 区别在于最后会返回一个函数。// call Function.prototype.MyCall = function (context) { if (typeof this !== "function") { throw new Error('t
原创 2022-04-07 09:34:50
127阅读
(1). why?三个函数的存在意义是什么?改变函数执行时的上下文(context).改变函数运行时的this指向: a. 每个函数都包含两个非继承而来的方法:call()和apply().(2). 区别:callapply的区别: a. 接受参数的方式不一样.其它: a. bind不立即执行. b. applycall立即执行.1. example:var name = '小熊',age =
原创 2023-09-12 09:43:38
94阅读
  • 1
  • 2
  • 3
  • 4
  • 5