Apa arti simbol $ di jQuery?

123

Apa arti $tanda di jQuery?

pengguna366312
sumber
Anda dapat membuat judulnya sedikit lebih deskriptif, daripada hanya terlihat seperti sepasang tag kategori
Michael Paulukonis
20
itu pertanyaan yang bagus untuk pemula jquery seperti saya. Saya membuat beberapa halaman jquery dengan memotong dan menempel dari internet, dan itu adalah pertanyaan pertama yang saya miliki tentang apa yang saya lakukan.
Mark Harrison

Jawaban:

138

Objek jQuery :)

Dari dokumentasi jQuery:

Secara default, jQuery menggunakan "$" sebagai pintasan untuk "jQuery"

Jadi, menggunakan $("#id") atau jQuery("#id")sama.

Andrea
sumber
Hai, @Andrea saya tidak tahu apakah saya menanyakan pertanyaan yang benar atau tidak, saya baru mengenal jQuery. Bisakah kita mengganti $ itu dengan simbol lain? dan jika memungkinkan, bagaimana caranya?
Hulk
@ Hulk dapat Anda gunakan noConflit()untuk menggantinya.
sangat keren
44

Aneh tapi nyata, Anda dapat menggunakan "$" sebagai nama fungsi di JavaScript. Ini adalah singkatan dari jQuery (). Yang dapat Anda gunakan jika Anda mau. jQuery dapat dijalankan dalam mode kompatibilitas jika pustaka lain sudah menggunakan $. Cukup gunakan jQuery.noConflict (). $ cukup umum digunakan sebagai fungsi pemilih di JS.

Di jQuery, fungsi $ melakukan lebih dari sekadar hal-hal tertentu.

  1. Anda bisa memberikannya selektor untuk mendapatkan koleksi elemen yang cocok dari DOM.
  2. Anda bisa meneruskan fungsi untuk dijalankan saat dokumen siap (mirip dengan body.onload () tetapi lebih baik).
  3. Anda dapat memberikannya string HTML untuk diubah menjadi elemen DOM yang kemudian dapat Anda masukkan ke dalam dokumen.
  4. Anda dapat memberikan elemen DOM atau elemen yang ingin Anda bungkus dengan objek jQuery.

Berikut dokumentasinya: https://api.jquery.com/jQuery/

Lance Fisher
sumber
7
Anda tahu, ini BENAR-BENAR harus menjadi jawaban yang tepat untuk pertanyaan ini ... Saya tidak percaya semua jawaban lelucon itu mendapat semua suara positif.
reedvoid
1
Setuju dengan komentar reedvoid. Ini adalah refleksi tentang keadaan dalam pemrograman Javascript. Yang mengatakan, tautan yang lebih tepat sekarang yang menjawab pertanyaan itu adalah api.jquery.com/jQuery
Cerah
Jika $ adalah sebuah fungsi, lalu bagaimana kita memanggil metode noConflict () di atasnya? Itu akan mungkin jika $ adalah sebuah objek, bukan fungsi.
maverick
1
@ dk49 Dalam JavaScript, fungsi dapat memiliki properti juga. Coba ini: function Person () {}; Person.city = 'Missoula'; console.log (Person.city)
Lance Fisher
Untuk lebih banyak bukti coba typeof $yang akan menampilkan "Fungsi". ;)
Lance Fisher
34

Ini adalah gula sintaksis . Ini tidak hanya spesifik untuk jQuery; perpustakaan lain juga menggunakannya. Anda dapat mencari artikel detail lengkap tentang penggunaan tanda dolar di JavaScript di sini .

Elzo Valugi
sumber
5
Saya suka istilah gula sintaksis . Terima kasih :)
Ravi Dhoriya ツ
4
Bagaimana ini jawabannya? Dari sini saya mengetahui bahwa tanda '$' di jQuery adalah singkatan dari "syntactic sugar". Dan artikel terkait berbicara panjang lebar tentang bagaimana dan mengapa, tanpa menjawabnya secara ringkas. Jawaban berikutnya oleh @andrea melakukan pekerjaan dalam tiga kata.
Lorenzog
Saya pikir OP ingin tahu mengapa simbol $ itu dipilih untuk mewakili perpustakaan, bukan tentang arti sebenarnya, yang agak jelas dan didokumentasikan
Elzo Valugi
tautan itu tidak berfungsi lagi, tautan yang Anda katakan menjelaskan secara detail $
user734028
@ user734028 Saya mengubah link ke cache, silakan periksa sekarang
Elzo Valugi
30

Seperti yang dikatakan dalam jawaban lain $ adalah jalan pintas ke fungsi jQuery.

Beberapa perpustakaan JavaScript menggunakan $ too (contoh: prototipe). Untuk menghindari konflik dengan pustaka lainnya, jQuery menyediakan fungsi jQuery.noConflict (). Memanggil fungsi ini kontrol variabel $ kembali ke perpustakaan lain yang pertama kali menerapkannya. Melakukan ini untuk menggunakan jQuery Anda tidak dapat melakukan ini $ ('div.someClass') lagi, sebagai gantinya jQuery ('div.someClass').

Alternatifnya bisa melakukan ini:

jQuery.noConflict();

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

//use $ for the other library

Saat menulis plugin untuk menghindari masalah dengan penggunaan noConflict, Anda dapat meneruskan 'jQuery' ke suatu fungsi:

function($) {

//use $ writing your plugin

}(jQuery)
Daniel Moura
sumber
9

$ hanyalah sebuah fungsi yang disebut jQuery. Ini adalah cara Anda mengakses semua fungsionalitas di jQuery lib.

Anda dapat menemukannya di sini: http://docs.jquery.com/%24

googletorp
sumber
7

Ini kependekan dari jQuery. Objek tempat semua fungsionalitas jQuery hidup.

Brian
sumber
5

$ Adalah gula sintaksis seperti yang disebutkan @Elzo. Tidak ada yang benar-benar menjawab pertanyaan Anda. $ Adalah singkatan dalam jQuery for window.jQuery, jadi Anda tidak perlu mengetiknya setiap saat.

tommydevs
sumber
4

$ hanyalah variabel lain. Dalam kasus jQuery, ini mereferensikan fungsi jQuery.

James Z.
sumber
4

Tanda $ untuk mendefinisikan / mengakses jQuery

Ved Prakash
sumber
1

Lihat file perpustakaan jQuery.

// Tampilkan jQuery dan $ identifiers.

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

Poin $ global ke jQuery.

Taman Sangkun
sumber