call的本质

时间:2021-01-24 01:02:15   收藏:0   阅读:24
1 var obj = {};
2 
3 var f = function () {
4   return this;
5 };
6 
7 f() === window // true

8 f.call(obj) === obj // true

f的内部有this

this的指向不唯一,可变化

在全局环境运行f,this指向全局环境

使用call方法后:

f.call(obj)

对f使用call方法后,f的运行环境变成了obj,this指向obj

 

故而:

对某函数使用call方法,改变此函数内部this的指向后运行

 

原文:https://www.cnblogs.com/flyover/p/14319216.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!