Programmering

3 JavaScript-biblioteker for å erstatte jQuery

Forenklet oppgaver som HTML-dokumentgjennomgang, animasjon og håndtering av hendelser, og det stabile jQuery JavaScript-biblioteket endret ansiktet til webutvikling. I mai 2019 blir jQuery fortsatt brukt på 74 prosent av kjente nettsteder, ifølge webteknologinspektøren W3Techs. Likevel blir jQuery-biblioteket, som debuterte i august 2006, nå sett på av noen utviklere som en eldre teknologi hvis tid har gått.

Alternativer til jQuery har dukket opp de siste årene, for eksempel Cash-biblioteket eller til og med bare moderne, vanilje JavaScript, nå som nettlesere alle håndterer JavaScript på samme måte og jQuery ikke lenger er nødvendig for å løse kompatibilitetsproblemer. Argumenter på Reddit og videoer på YouTube gjør at jQuery har blitt foreldet, eller i det minste ikke er så viktig som det en gang var.

Hvorfor jQuery ikke lenger er nødvendig

I en YouTube-presentasjon, "Er jQuery fortsatt relevant i 2018?", Erkjenner webutviklingspedagog Brad Traversy at jQuery sannsynligvis er det beste generaliserte JavaScript-biblioteket noensinne har blitt opprettet. Det er lett å lære, kompatibel i flere nettlesere, mer kortfattet enn eldre JavaScript-vanilje, og rik på plugin-moduler som tilbyr spesifikk funksjonalitet. Men JavaScript har avansert langt siden ECMAScript 6, og jQuery er ikke lenger nødvendig i mange situasjoner, avslutter Traversy.

I en annen video hevder kodingspedagog Kenneth Lowrey at det å bli flytende i jQuery er bortkastet tid. I det nåværende webutviklingslandskapet håndterer moderne nettlesere JavaScript det meste, for det meste. I de fleste tilfeller er innfødt JavaScript-kode bedre enn et "oppblåst eldre bibliotek som jQuery," sier han.

Mens jQuery hadde vært valget for å lage HTTP-forespørsler, brakte ECMAScript 6 for eksempel frem Fetch, et lovet-basert API som gjør HTTP-forespørsler enklere. Og fremgangen stopper ikke med HTTP. Der jQuery har verktøy for oppgaver som å manipulere matriser, har vanilla JavaScript nå forbedret innkvartering også for disse operasjonene.

Animasjoner er fremdeles vanskeligere med vanilje JavaScript enn jQuery, men det er andre alternativer som CSS-overganger eller keyframes, påpeker Traversy. Tredjeparts GreenSock-biblioteket kan også brukes til animasjoner. For DOM-manipulering, en oppgave som en gang var styrt av jQuery, har innfødte nettleser-API-er lukket gapet.

For oppgaver som ikke kan gjøres i vanilje JavaScript, anbefaler Traversy spesialiserte biblioteker, i stedet for et generalisert bibliotek som jQuery. Traversy anbefaler også å bruke JavaScript-rammer som React, Angular eller Vue for mellomstore og store applikasjoner. Traversy anbefaler fortsatt jQuery for bruk på enkle nettsteder uten rammeverk.

jQuery-alternativer

Hva bør du bruke i stedet for jQuery? Foruten moderne, vanilje JavaScript, inkluderer en kort liste over jQuery-alternativer Cash, Zepto og Syncfusion Essential JS 2. Cash og Zepto er JavaScript-biblioteker med åpen kildekode tilgjengelig under en MIT-lisens. Syncfusion Essential JS 2 er et kommersielt produkt.

Penger

Cash har mer enn 3 570 stjerner på GitHub. Fakturert som et “absurd lite jQuery-alternativ” for moderne nettlesere, har Cash en jQuery-stil syntaks for å manipulere DOM og tar opp 32 KB plass, ukomprimert. Cash støtter funksjoner, inkludert navneavstandshendelser, TypeScript-typer og moderne bygg. Du kan laste ned kontanter fra GitHub.

Zepto

Zepto blir beskrevet som "et minimalistisk JavaScript-bibliotek med et stort sett jQuery-kompatibelt API." Utviklere som kjenner jQuery, vet allerede hvordan de skal bruke Zepto, sier produsentene. Zepto påstår seg å være mye mindre og raskere å laste inn enn jQuery, og kan fungere med PhoneGap-verktøysettet for mobile og stasjonære nettlesere. Du kan laste ned Zepto fra prosjektnettstedet.

Syncfusion Essential JS 2

Syncfusion Essential JS 2 er et kommersielt lisensiert JavaScript UI-kontrollbibliotek skrevet i TypeScript. Syncfusion fungerer som et alternativ til jQuery UI-biblioteket, og er designet for å være et lite overhead, lett og modulært bibliotek for å forbedre webapplikasjoner. Syncfusion støtter rammer inkludert Angular, React og Vue. Du kan kjøpe Syncfusion Essential JS 2 eller laste ned en gratis prøveversjon fra Syncfusion-nettstedet. Komplett kildekode, enhetstestfiler, testskript og live demoer er tilgjengelig på GitHub.

$config[zx-auto] not found$config[zx-overlay] not found