JQuery有个语法问题没看懂,涉及到JS很多概念,希望前端大牛,JS大牛,给我这个非专业码农讲解下

图片说明

请问为什么this 是这几个指向呢,分数我可以提高,希望能讲解明白,谢谢了,361955141,可以加我QQ聊,广交各位JS大牛。

https://www.2cto.com/kf/201609/547345.html


希望这个图可以解决你的问题

函数内this的值是在函数调用时才确定的,函数的调用方式不同,this也就不同。
你aQuery()是直接调用的,函数内this的值是window对象,(在js严格模式"use strict";下,函数内this的值是null)。
而 aQuery.prototype.init()等于是将init作为prototype对象的方法来调用的,函数内this的值是aQuery.prototype这个对象。
而在jQuery中人家是 new jQuery.prototype.init(); 用new来调用的。
也就是init才是作为真正的构造函数,这样函数内this的值才是一个新创建的对象。