Почему сборка JavaScript функционирует как плагины jQuery?

Я видел много реализаций jQuery существующих функций JavaScript, которые просто переносят код JavaScript в обертку jQuery и на самом деле не полагаются ни на одну основу jQuery для их операции.

Каковы преимущества использования JavaScript как плагин jQuery?
Если нет ни одного, там потеря скорости для использования плагина jQuery, который, возможно, был легко реализован вне обертки точно также?

Большое спасибо заранее (просто пытающийся изучить что-то здесь).

Обновленный с примером:
http://plugins.jquery.com/project/base64
был первоначально
http://www.webtoolkit.info/javascript-base64.html

11
задан Mohammad 11 June 2010 в 22:12
поделиться

3 ответа

Большая часть jQuery представляет собой просто умную оболочку для существующих функций JavaScript. $ ('# some-element') , возможно, немного проще набрать, чем document.getElementById ('some-element') , но в остальном не сильно отличается.

(Я преувеличиваю, но ненамного.)

Основная полезность jQuery - это возможность комбинировать вместе его различные компоненты. Если я могу выбирать элементы с помощью селектора jQuery, а затем выполнять некоторые действия с этими элементами непосредственно через функцию jQuery, это предпочтительнее, например, извлекать базовые элементы DOM и манипулировать ими вручную.

Так что это действительно зависит от того, какие функции вы видите в оболочке. Некоторые из них вполне могут не приносить никакой пользы, и авторы просто привыкли ко всему, что находится в jQuery. (Мы определенно видим это явление в StackOverflow - люди, которые не могут найти стандартную функцию JavaScript просто потому, что ее нет в документации jQuery). В других случаях может быть некоторая скрытая выгода, даже если оболочка почти ничего не делает для изменения поведения базовой функции.

8
ответ дан 3 December 2019 в 08:54
поделиться

Кроме того, вокруг jQuery существует большой импульс и общее доверие. Включение произвольного javascript в вашу кодовую базу может быть не так "приемлемо" для вышестоящих, как включение нового плагина jQuery.

Так что это может быть ошибочное восприятие, но, будучи плагином jQuery, библиотека выигрывает от того, что ассоциируется с высококачественным кодом.

4
ответ дан 3 December 2019 в 08:54
поделиться

ИМХО, единственная причина для создания подключаемого модуля - выполнение некоторых функций в отношении селектора, то есть набора выбранных элементов, например

$('.myelements').someFunction();

Если ваш подключаемый модуль в конечном итоге выглядит так (например, недавно выпущенный подключаемый модуль Microsoft Globalization)

$.doSomeStuff();

то нет особой выгоды, которую нельзя было бы получить от использования замыкания. Однако многие разработчики не понимают замыканий и пространств имен в javascript, и, следуя шаблону разработки плагина, они могут получить выгоду, не понимая полностью шаблон.

1
ответ дан 3 December 2019 в 08:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: