Разница стоимости, прототипа и свойства
ХОРОШО! Прежде всего, этот вопрос исходит от человека, который слишком глубоко копает (и, возможно, теряется) во вселенной jQuery.
В своем обзоре я обнаружил, что основной шаблон jquery выглядит примерно так (если необходимо, исправление рекомендуется):
(function (window, undefined) {
jQuery = function (arg) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init(arg);
},
jQuery.fn = jQuery.prototype = {
constructor: jQuery,
init: function (selector, context, rootjQuery) {
// get the selected DOM el.
// and returns an array
},
method: function () {
doSomeThing();
return this;
},
method2: function () {
doSomeThing();
return this;,
method3: function () {
doSomeThing();
return this;
};
jQuery.fn.init.prototype = jQuery.fn;
jQuery.extend = jQuery.fn.extend = function () {
//defines the extend method
};
// extends the jQuery function and adds some static methods
jQuery.extend({
method: function () {}
})
})
когда$
инициируетjQuery.prototype.init
инициирует и возвращает массив элементов. Но я не мог понять, как он добавляет метод jQuery, как.css
или же.hide
,так далее. к этому массиву.
Я получаю статические методы. Но не мог получить, как он возвращает и массив элементов со всеми этими методами.