Яке значення символу $ в jQuery?


123

Що означає $знак у jQuery?


ви можете зробити заголовок трохи
описовішим

20
це прекрасне запитання для таких, як я. Я скопив кілька сторінок jquery, вирізаючи та вставляючи з Інтернету, і це було перше питання, яке у мене було про те, що я роблю.
Марк Гаррісон,

Відповіді:


138

Об'єкт jQuery :)

З документації jQuery:

За замовчуванням jQuery використовує "$" як ярлик для "jQuery"

Отже, використання $("#id") або jQuery("#id")те саме.


Привіт, @Andrea, я не знаю, задаю я правильне запитання чи ні, я новачок у jQuery. Чи можемо ми замінити цей $ будь-яким іншим символом? і якщо можливо, як?
Халк

@Hulk ви можете використовувати його noConflit()для заміни.
супер круто

44

Як не дивно, але правда, ви можете використовувати "$" як ім'я функції в JavaScript. Це скорочення для jQuery (). Який ви можете використовувати, якщо хочете. jQuery можна запустити в режимі сумісності, якщо інша бібліотека вже використовує $. Просто використовуйте jQuery.noConflict (). $ досить часто використовується як функція селектора в JS.

У jQuery функція $ робить набагато більше, ніж вибирає речі.

  1. Ви можете передати його селектором, щоб отримати колекцію відповідних елементів від DOM.
  2. Ви можете передати йому функцію, яку можна запустити, коли документ готовий (подібний до body.onload (), але краще).
  3. Ви можете передати йому рядок HTML, щоб перетворитись на елемент DOM, який потім можна вставити в документ.
  4. Ви можете передати йому елемент DOM або елементи, які потрібно обернути об'єктом jQuery.

Ось документація: https://api.jquery.com/jQuery/


7
Ви знаєте, це дійсно має бути правильною відповіддю на це питання ... Я не можу повірити, що всі ці жартівливі відповіді отримали всі голоси.
reedvoid

1
Погодьтеся з коментарями reedvoid. Це роздуми про стан справ у програмуванні Javascript. Це було сказано, точніше посилання, що відповідає на питання, - api.jquery.com/jQuery
Сонячний

Якщо $ є функцією, то як ми називаємо на ній метод noConflict ()? Це було б можливо, якби $ був об'єктом, а не функцією.
maverick

1
@ dk49 У JavaScript функції можуть мати і властивості. Спробуйте це: функція Person () {}; Person.city = 'Міссула'; console.log (Person.city)
Ланс Фішер

Для отримання додаткових доказів спробуйте, typeof $який виведе "Функція". ;)
Ленс Фішер

34

Це синтаксичний цукор . Він не специфічний лише для jQuery; інші бібліотеки також використовують його. Ви можете шукати статтю про повну інформацію про використання знака долара у JavaScript тут .


5
Ну, мені сподобався термін синтаксичний цукор . Дякую за це :)
Ravi Dhoriya ツ

4
Як це відповідь? З цього я дізнався, що знак "$" у jQuery означає "синтаксичний цукор". І зв'язана стаття детально розповідає про те, як і чому, не відповідаючи на це стисло. Наступна відповідь @andrea виконує роботу в трьох словах.
lorenzog

Я думаю, що ОП хотіла дізнатися, чому саме цей $ символ обраний для представлення бібліотеки, а не про те, що насправді означає, що начебто очевидно і документально зафіксовано
Elzo Valugi

це посилання більше не працює, те, що ви сказали, пояснює докладно $
user734028

@ user734028 Я змінив посилання на кешоване, перевірте зараз
Elzo Valugi

30

Як сказано в інших відповідях $ - це ярлик до функції jQuery.

У деяких бібліотеках JavaScript використовується також $ (наприклад: прототип). Щоб уникнути конфлікту з цими іншими бібліотеками, jQuery забезпечує функцію jQuery.noConflict (). Викликаючи цю функцію, управління змінною $ повертається до іншої бібліотеки, яка її вперше реалізувала. Виконуючи це для використання jQuery, ви більше не можете робити цей $ ('div.someClass'), а jQuery ('div.someClass').

Можна також зробити це:

jQuery.noConflict();

jQuery.ready(function($) {
   // use $ for jQuery
}

//use $ for the other library

Під час написання плагінів, щоб уникнути проблем із використанням noConflict, ви можете передати 'jQuery' функції:

function($) {

//use $ writing your plugin

}(jQuery)

9

$ - це просто функція, яка називається jQuery. Це доступ до всіх функціональних можливостей в jQuery lib.

Ви можете знайти його тут: http://docs.jquery.com/%24


7

Це короткий jQuery. Об'єкт, де живе вся функціональність jQuery.


5

$ - синтаксичний цукор, як згадується @Elzo. Хоча ніхто насправді не відповів на ваше запитання. $ Є скороченою в jQuery для window.jQuery, тому вам не потрібно вводити її кожен раз.


4

$ - це ще одна змінна. У випадку jQuery ця посилання посилається на функцію jQuery.




1

Подивіться на файл бібліотеки jQuery.

// Розкрийте jQuery та ідентифікатори $.

if ( typeof noGlobal === strundefined ) {
    window.jQuery = window.$ = jQuery;
}

Global $ вказує на jQuery.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.