首页 > 其他分享 >说一说this指向(普通函数、箭头函数)?

说一说this指向(普通函数、箭头函数)?

时间:2022-08-30 07:45:09浏览次数:87  
标签:说一说 函数 指向 箭头 普通 上下文 构造函数

this 存在的场景有三种全局执行上下文和函数执行上下文和 eval 执行上下文,eval 这种不讨论,在全局环境中调用普通函数,严格模式下this指向 undefined,非严格模式下this指向全局变量 window;通过一个对象来调用函数内部的方法,this指向该对象;new 关键字搭建好的新对象,构造函数里面的 this 指向新对象本身。箭头函数并不会创建其自身的执行上下文,即箭头函数没有 this,不能作为构造函数,一般是继承外部普通函数的 this 指向。

如果是使用 call、bind、apply 修改了指向,将会指向绑定后的 this 在箭头函数之中将会指向函数的外层执行上下文,当函数定义之后将会确定当前的this。

 

 

关于普通函数和箭头函数中 this 指向的更详细内容:https://www.cnblogs.com/cyy22321-blog/p/16127499.html

关于 call、bind、apply 更详细内容:https://www.cnblogs.com/cyy22321-blog/p/16204054.html

标签:说一说,函数,指向,箭头,普通,上下文,构造函数
From: https://www.cnblogs.com/cyy22321-blog/p/16638006.html

相关文章

  • C语言怎么给函数添加形参的默认值
    以下内容为本人的著作,如需要转载,请声明原文链接微信公众号「englyf」https://www.cnblogs.com/englyf/p/16637890.html如果不是机缘巧合,当年转到C++之后,恐怕很难再有机......
  • Delphi 中constructor、destructor、property(构造函数,析构函数、属性)关键字的用法
    首先搜索现成的文章学习原文:https://www.cnblogs.com/guorongtao/p/15132445.html其次自己理解并总结最常见的用法constructor用来定义构造函数,destructor用来定义析构......
  • R语言中image函数绘制热图
     001、dat<-data.frame(rep1=sample(1:20),rep2=20:1,rep3=1:20)datimage(1:20,1:3,as.matrix(dat))##参数需要是矩阵  ......
  • python基础.内置函数(二),递归函数,二分法
    python基础.内置函数(二),递归函数,二分法  一.lamda匿名函数为了解决一些简单的需求而设计一句话函数 lambda表示的是匿名函数.不需要用def来声明, 一句话......
  • python基础-内置函数
    python基础-内置函数 什么是内置函数?就是python给你提供的.拿来直接用的函数,比如print.,input等等.截止到python版本3.6.python一共提供了了68个内置函数.他们......
  • Python函数
    #函数deffun(a,b='b'):print("fun"+a+b)returnafun(b='b',a='a')#关键字实参#传递任意数量实参实参封装到元组里deffun1(*arg):print(arg)f......
  • sql中stuff函数的用法
    1.作用:删除指定字符串参数。 2.语法:stuff(character_expression,start,length,character_expression)四个参数:parm1,parm2,parm3,parm4pa......
  • C# 属性(字段)与构造函数谁先执行
    你知道属性(字段)与构造函数谁先执行吗?-杨浩瑞-博客园(cnblogs.com)1publicclassSportJudge2{3privateDAL.SportJudgeDataContextsj=newDAL.Sport......
  • go之函数
    函数定义函数是一块执行特定任务的代码。一个函数是在输入源基础上,通过执行一系列的算法,生成预期的输出。函数的声明语法funcfunctionname(parameternamety......
  • 箭头函数为什么不能作为构造函数
    构造函数创建实例对象的过程:构造函数是通过new关键字来生成对象实例,生成对象实例的过程也是通过构造函数给实例绑定this的过程,而箭头函数没有自己的this。 创建......