this的几种情况

this是函数执行主体,谁把它执行的。

1.普通函数执行,取决于函数前是否有"点"。

  1).有点,点前面是谁,this就是谁。最后一个点上面的全部集合。

  2).没有点,this就是window(严格模式下是undefined)。自执行函数中的this,一般都是window。


2.给元素的事件行为绑定方法,(DOM0/DOM2),事件触发,方法执行,此时方法中的this一般就是当前元素本身。


3.构造函数new执行,this指向新创建的实例。


4.箭头函数,箭头函数没有自己的this,箭头函数中的this是箭头函数创建时当前上下文中的this。如果当前上下文没有this就会向上寻找。


5.函数this被bind,call,apply强制修改,以修改后指向为准。

箭头函数是创建时就已经确定了this,又由于箭头函数本身没有this,所以使用call等方法也无法改变其this指向,第一个参数将被忽略。

普通函数则是执行是才明确this。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 3,543评论 1 11
  • dom事件 1.什么是事件?事件就是一件事情或者行为(对于元素来说他的很多事件都是天生自带)只要我们去操作这个元素...
    田成力阅读 651评论 0 0
  • JS基础 页面由三部分组成:html:超文本标记语言,负责页面结构css:层叠样式表,负责页面样式js:轻量级的脚...
    小贤笔记阅读 627评论 0 5
  • 22、JQ的基础语法、核心原理和项目实战 jQ的版本和下载 jQuery版本 1.x:兼容IE6-8,是目前PC端...
    萌妹撒阅读 1,772评论 0 0
  • JavaScript的组成 JavaScript 由以下三部分组成:ECMAScript(核心):JavaScri...
    纹小艾阅读 3,464评论 0 3