Programmering

3 JavaScript-biblioteker til erstatning af jQuery

Forenklet opgaver som HTML-dokumentgennemgang, animation og håndtering af begivenheder ændrede det solide jQuery JavaScript-bibliotek ansigtet til webudvikling. Fra maj 2019 bruges jQuery stadig på 74 procent af kendte websteder, ifølge webteknologinspektør W3Techs. Ikke desto mindre ses jQuery-biblioteket, der debuterede i august 2006, nu af nogle udviklere som en ældre teknologi, hvis tid er gået.

Alternativer til jQuery er opstået i de senere år, såsom Cash-biblioteket eller endda bare moderne, vanilje JavaScript, nu hvor webbrowsere alle håndterer JavaScript på samme måde, og jQuery ikke længere er nødvendigt for at løse kompatibilitetsproblemer. Argumenter på Reddit og videoer på YouTube gør sagen om, at jQuery er blevet forældet eller i det mindste ikke er så vigtigt som det engang var.

Hvorfor jQuery ikke længere er nødvendigt

I en YouTube-præsentation, “Er jQuery stadig relevant i 2018 ?,” anerkender webudviklingspædagog Brad Traversy, at jQuery sandsynligvis er det bedste generaliserede JavaScript-bibliotek, der nogensinde er oprettet. Det er let at lære, kompatibel med flere browsere, mere kortfattet end ældre JavaScript-vanille og rig på plug-ins, der tilbyder specifik funktionalitet. Men JavaScript er avanceret langt siden ECMAScript 6, og jQuery er ikke længere nødvendigt i mange situationer, konkluderer Traversy.

I en anden video argumenterer kodepedagog Kenneth Lowrey for, at det at være flydende i jQuery er spild af tid. I det nuværende webudviklingslandskab håndterer moderne browsere JavaScript for det meste. I de fleste tilfælde er native JavaScript-kode bedre end et "oppustet arv-bibliotek som jQuery," siger han.

Mens jQuery havde været valget til at foretage HTTP-anmodninger, bragte ECMAScript 6 f.eks.Fetch, et lovet-baseret API, der gør HTTP-anmodninger lettere. Og fremskridt stopper ikke med HTTP. Hvor jQuery har hjælpeprogrammer til opgaver som at manipulere arrays, har vanilla JavaScript nu også forbedret tilpasning til disse operationer.

Animationer er stadig sværere med vanille JavaScript end jQuery, men der er andre muligheder såsom CSS-overgange eller nøglerammer, påpeger Traversy. Tredjeparts GreenSock-biblioteket kan også bruges til animationer. Til DOM-manipulation, en opgave, der engang var styret af jQuery, har native browser-API'er lukket hullet.

For opgaver, der ikke kan udføres i vanilje JavaScript, anbefaler Traversy specialiserede biblioteker i stedet for et generaliseret bibliotek som jQuery. Traversy anbefaler også at bruge JavaScript-rammer som React, Angular eller Vue til mellemstore og store applikationer. Traversy anbefaler stadig jQuery til brug på enkle websteder uden rammer.

jQuery-alternativer

Hvad skal du bruge i stedet for jQuery? Udover moderne, vanilje JavaScript indeholder en kort liste med jQuery-alternativer Cash, Zepto og Syncfusion Essential JS 2. Cash og Zepto er open source JavaScript-biblioteker tilgængelige under en MIT-licens. Syncfusion Essential JS 2 er et kommercielt produkt.

Kontanter

Kontanter har mere end 3.570 stjerner på GitHub. Faktureret som et “absurd lille jQuery-alternativ” for moderne browsere har Cash en jQuery-syntaks til manipulation af DOM og tager 32 KB plads, ukomprimeret. Cash understøtter kapaciteter inklusive navneområde begivenheder, TypeScript typer og moderne builds. Du kan downloade kontanter fra GitHub.

Zepto

Zepto beskrives som "et minimalistisk JavaScript-bibliotek med et stort set jQuery-kompatibelt API." Udviklere, der kender jQuery, ved allerede, hvordan de bruger Zepto, siger producenterne. Zepto foregiver at være meget mindre og hurtigere at indlæse end jQuery og kan arbejde med PhoneGap-værktøjssættet til mobile og desktop-browsere. Du kan downloade Zepto fra projektets websted.

Syncfusion Essential JS 2

Syncfusion Essential JS 2 er et kommercielt licenseret JavaScript UI-kontrolbibliotek skrevet i TypeScript. Syncfusion fungerer som et alternativ til jQuery UI-biblioteket og er designet til at være et lavt overhead, let og modulært bibliotek for at forbedre webapplikationer. Syncfusion understøtter rammer, herunder Angular, React og Vue. Du kan købe Syncfusion Essential JS 2 eller downloade en gratis prøveperiode fra Syncfusion-webstedet. Komplet kildekode, enhedstestfiler, testskripts og live demoer er tilgængelige på GitHub.