javascript中call函数的原理

原理分析

1、给CONTEXT设置一个属性,属性值一定是要执行的函数。

2、基于CONTEXT.XXX()成员访问执行方法,就可以把函数执行,并且改变里面的THIS。

都处理完后,把给CONTEXT设置的这个属性删除掉。

实例

Function.prototype.call=function(context,...params){
letkey=Symbol('key'),//设置唯一值
result;
!/^(object|function)$/.test(typeofcontext)?context=Object(context):null;
context!=null?null:context=window;//如果context为null或者undefined,直接赋值为window

context[key]=this;
result=context[key](...params);//返回值
deletecontext[key];
returnresult;
}

以上就是javascript中call函数的原理,希望对大家有所帮助。更多Javascript学习指路:Javascript

原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容