Parliamo di automobili.
Oh aspetta, l'abbiamo già fatto - ricordi quella volta che ci siamo incontrati, qualche tempo fa? Abbiamo parlato di automobili. In effetti, sembravi essere piuttosto l'esperto di macchine. Sei stato in grado di spiegare, in dettaglio, tutto ciò che è giusto, sbagliato ed entusiasmante per l'ultima gara di Formula 1. Sapevi a memoria tutti i modelli Lamborghini, compresi il prezzo e la disponibilità. Hai persino pensato di acquistare la tua Ferrari 599 GTB Fiorano e ti stavi risparmiando (scommetto che la cena con la bistecca non l'ha t molto di aiuto).
Mentre spiegavo i difetti di Toyota con una voce grande ed eccitata, all'improvviso sei saltato dalla sedia e hai urlato nell'aria, agitando i pugni: "Accidenti a tutto, sono un magnifico esperto di tutto ciò che riguarda le auto ! Sarò un meccanico di auto! "
E così sei andato. Hai avuto un'intervista, il Boss Man è rimasto impressionato quanto me dalle tue conoscenze e sei stato assunto. Il primo cliente entrò. La sua frizione era rotta. L'hai ispezionato e non sapevi cosa fare. In effetti, non avevi assolutamente idea di come seguire il consiglio che ti ha dato Boss Man. Sei stato licenziato.
Ma come potrebbe essere !? Conoscete tutto sulle automobili! Tranne ... tutto sulle auto. Sai benissimo che la tua auto dei sogni ha un motore V12, ma non sai cosa significhi realmente.
Quindi non sei un meccanico di auto, davvero - sei un appassionato di auto. E finché non imparerai come funzionano le automobili , rimarrai entusiasta.
Ora lascia che te lo chieda. Come funziona $.fn.text
? E per quanto riguarda $.fn
? Cosa intendono veramente? In che modo $(something)
restituisce un cosa gigantesco contenente cose, e cos'è esattamente quel cosa? Puoi replicare la loro funzionalità, almeno un po ', anche in teoria? Riesci a far fronte senza jQuery?
Dire che "JavaScript nativo è difficile" è solo ... falso. Innanzitutto, perché JavaScript come linguaggio non ha nulla a che fare con il DOM , che è principalmente ciò che abbozza jQuery. Secondo perché una volta che hai imparato qualcosa sul DOM, puoi già navigare tra i più comuni bug tra browser. Ma solo un piccolo segreto: all'inizio è tutto difficile. La divisione lunga era una cagna in quinta elementare.
Come seconda analogia per questa risposta: jQuery è JavaScript-DOM (non JavaScript la lingua, solo il DOM) come Array.prototype.forEach
è a for
. Funziona, per il 99% dei casi. E funziona bene. Ma per quell'1% che non è coperto, hai bisogno di sapere come usare il ciclo for
, se non altro per essere pratico. Questa intera risposta è basata sul lato "più puro" della domanda, e nemmeno sul lato tecnico (la dimensione della biblioteca, per esempio, e molte altre cose, come spiegato nella risposta di Michael Dorrant). Perché amo JavaScript e quando le persone sembrano semplicemente metterlo da parte per dire in modo casuale "pah, quei silly javascriptians" e sventolando fantasiosi guanti bianchi, si arriva alla morale.
Se puoi accettare il fatto che sarai sempre un appassionato di JavaScript, allora chi sono io per fermarti? Ma se vuoi essere un programmatore JavaScript, devi prima avere le conoscenze per almeno scegliere tra l'uso di jQuery (o qualsiasi altra libreria) e non usare una libreria. Impara il DOM. Impara come usarlo. Scrivi la tua piccola biblioteca o solo alcune raccolte di funzioni di supporto. E una volta che sei a conoscenza del DOM, e scegli di usare jQuery - Godspeed. La pigrizia è stata premiata per coloro che hanno lavorato sodo.