kot2566
@kot2566

Jquery Что это за инициализация класса и зачем?

Есть вот такой код "класса":
var myClass = (function ($) {

    myClass = function (options) {
        var that = this;

        that.initClass();
    };

    myClass.prototype.initClass = function () {
        var that = this;
        that.someAction();
    };

    myClass.prototype.someAction = function () {
        var that = this;
        var result = 2 * 2;
        alert(result);
    };

    return myClass;

})(jQuery);

// в другом месте
 var myClass = new myClass ();


Вопрос такой:
Что это за обёртка (function ($) { ... })(jQuery);, какую роль она играет?
В чём будет отличие, если я её уберу и будет так:
var  myClass = function (options) {
        var that = this;

        that.initClass();
    };

    myClass.prototype.initClass = function () {
        var that = this;
        that.someAction();
    };

    myClass.prototype.someAction = function () {
        var that = this;
        var result = 2 * 2;
        alert(result);
    };

// в другом месте

 var myClass = new myClass ();
  • Вопрос задан
  • 75 просмотров
Решения вопроса 3
@weart
чтобы юзать внутри $('.pirozok')
Ответ написан
Комментировать
@TheAndrey7
Убирайте. Она совершенно не нужна, если jq не используется в коде.
Ответ написан
Комментировать
@zkrvndm Куратор тега JavaScript
Софт для автоматизации
Обертка эта нужна, чтобы внутри этой обертки знак доллара всегда обрабатывался, как jQuery. Это анонимная функция в аргументы которой ты передаешь переменную window.jQuery и внутри функции локально присваиваешь это значение знаку доллара.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы