javascript中call函数的原理
原理分析
1、给CONTEXT设置一个属性,属性值一定是要执行的函数。
2、基于CONTEXT.XXX()成员访问执行方法,就可以把函数执行,并且改变里面的THIS。
都处理完后,把给CONTEXT设置的这个属性删除掉。
实例
Function.prototype.call = function(context,...params){let key = Symbol('key'),//设置唯一值
result;
!/^(object|function)$/.test(typeof context) ? context = Object(context) :null;
context !=null ? null : context = window;//如果context为null或者undefined,直接赋值为window
context[key] = this;
result = context[key](...params);//返回值
delete context[key];
return result;
}
以上就是javascript中call函数的原理,希望对大家有所帮助。更多Javascript学习指路:Javascript
推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。
以上是 javascript中call函数的原理 的全部内容, 来源链接: utcz.com/z/545112.html