Зачем создавать Javascript как плагины jQuery?

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

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

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

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

Ответ 1

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

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

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

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

Ответ 2

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

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

Ответ 3

IMHO единственная причина для создания плагина - выполнить некоторые функции против селектора, т.е. набор выбранных элементов, например

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

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

$.doSomeStuff();

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