var jQuery = function(global, factory) {
return new jQuery.fn.init();
}
jQuery.fn = jQuery.prototype = {
constructor: jQuery,
init: function() {
this.jquery = 3;
return this;
},
each: function() {
console.log('each');
return this;
}
}
jQuery.fn.init.prototype = jQuery.fn;
// init构造函数
jQuery().each().each()
Ce qui précède est un morceau de code source de jQuery. Ma question est de savoir pourquoi la deuxième each
fonction de la dernière ligne du code peut toujours être exécutée
Ceci dans le prototype pointe vers l'objet instance, renvoyez-le dans chacun pour renvoyer cet objet, réalisant ainsi des appels en chaîne
Deux chacun ont le même effet qu'un chacun, et les objets sont tous jQuery
Parce que ce que vous retournez, c'est ceci, sans parler de deux, 10 feront aussi l'affaire
链式编程
return this