Подтвердить что ты не робот

Использует ярлык $() в плохой практике jQuery?

Недавно я слушал подкаст, который комментировал использование $() vs с помощью jQuery(). Было указано, что каждый раз, когда используется $(), создается новый объект, а при использовании jQuery() это не так. Я google'd вокруг, но не мог найти что-либо по этой конкретной теме.

Я понимаю, что это не типичный пример, но вот почему я заинтересован в ответе на этот вопрос.

У меня есть страница, которую пользователь будет загружать в браузере целый день (24 часа или, возможно, дольше), а обновления выполняются в DOM каждые ~ 5 секунд в результате вызова AJAX через jQuery ( Часть вызова AJAX не имеет отношения к обновлению DOM - обновление для DOM выполняется с использованием строки HTML и вызова объекта jQuery для .empty(), а затем .html()).

После прослушивания этого, я впоследствии переключил все вызовы $() на вызовы jQuery(), но я хотел бы знать:
Использует $() против использования jQuery() плохой практики? Существует ли незначительная разница между этими двумя? Или это действительно заметно в крупных проектах?

4b9b3361

Ответ 1

Нет, это неплохая практика, и нет разницы в производительности.

Идентификаторы $ и jQuery относятся к тому же экземпляру функции.
Это делается с помощью последней строки jQuery.js:

window.jQuery = window.$ = jQuery;

Ответ 2

Единственная проблема с использованием $() over jQuery() - это возможность использования другой среды Javascript.

Ответ 3

Нет - посмотрите исходный код jQuery. $- это еще один псевдоним для jQuery - последняя строка говорит все:

window.jQuery = window.$ = jQuery;

Смотрите сами: http://code.jquery.com/jquery-latest.js

Ответ 4

Для меня цель состоит в том, чтобы избежать столкновения имен с другими библиотеками, которые также используют $в качестве основного объекта, например Prototype, если вы хотите использовать обе библиотеки на одной странице или вы не знаете, где будет ваш код б...

Ответ 5

Вы уверены, что это $() vs jQuery()? Возможно, более существенным моментом является то, что есть и хиты производительности, и многие новые js-кодеры используют $() без необходимости, когда могут выполняться простые js.

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

Ответ 6

Как уже говорилось ранее, единственная реальная проблема заключается в конфликте с другими используемыми фреймами js, поэтому я считаю, что это самое удобное решение, которое все еще может использовать знак доллара, но не имеет конфликтов и делает ваш код более переносимым

(function($) { /* some code that uses $ */ })(jQuery)

http://docs.jquery.com/Using_jQuery_with_Other_Libraries#Referencing_Magic_-_Shortcuts_for_jQuery