Ohjelmointi

3 JavaScript-kirjastoa korvaamaan jQuery

Yksinkertaistamalla tehtäviä, kuten HTML-asiakirjojen läpikäynti, animaatio ja tapahtumien käsittely, vakaa jQuery-JavaScript-kirjasto muutti verkkokehityksen kasvot. Toukokuussa 2019 jQueryä käytetään edelleen 74 prosentissa tunnetuista verkkosivustoista verkkotekniikan tutkijan W3Techsin mukaan. Jotkut kehittäjät pitävät nyt jQuery-kirjastoa, joka esiteltiin elokuussa 2006, vanhempana tekniikkana, jonka aika on kulunut.

Viime vuosina on löydetty vaihtoehtoja jQuerylle, kuten Cash-kirjasto tai jopa vain moderni, vanilja JavaScripti, nyt kun kaikki selaimet käsittelevät JavaScriptiä samalla tavalla, eikä jQueryä enää tarvita yhteensopivuusongelmien ratkaisemiseen. Redditin väitteet ja YouTuben videot tekevät jQuerystä vanhentuneen tai ainakaan niin välttämättömän kuin ennen.

Miksi jQueryä ei enää tarvita

Eräässä YouTube-esityksessä "Onko jQuery edelleen ajankohtainen vuonna 2018?" Verkkokehityksen kouluttaja Brad Traversy myöntää, että jQuery on luultavasti paras yleistetty JavaScript-kirjasto, joka on koskaan luotu. Se on helppo oppia, yhteensopiva selainten kanssa, ytimekkäämpi kuin vanhemmat vaniljakoodit ja runsaasti lisäosia, jotka tarjoavat erityisiä toimintoja. Mutta JavaScript on edennyt kauas ECMAScript 6: n jälkeen, ja jQueryä ei enää tarvita monissa tilanteissa, Traversy päättelee.

Toisessa videossa koodaava kouluttaja Kenneth Lowrey väittää, että sujuvaksi jQueryksi tuleminen on ajanhukkaa. Nykyisessä verkkokehitysmaastossa modernit selaimet käsittelevät JavaScriptiä suurimmaksi osaksi samalla tavalla. Useimmissa tapauksissa natiivi JavaScript-koodi on parempi kuin "paisunut vanha kirjasto, kuten jQuery", hän sanoo.

Vaikka jQuery oli ollut valinta HTTP-pyyntöjen tekemiseen, esimerkiksi ECMAScript 6 toi esiin Fetchin, joka on luvattu API, joka helpottaa HTTP-pyyntöjä. Eteneminen ei lopu HTTP: n avulla. Jos jQueryllä on apuohjelmia esimerkiksi matriisien manipulointiin, vanilja JavaScript on nyt parantanut majoitusta myös näille toiminnoille.

Animaatiot ovat edelleen vaikeampia vaniljakoodilla kuin jQuery, mutta on muitakin vaihtoehtoja, kuten CSS-siirtymät tai avainkehykset, Traversy huomauttaa. Kolmannen osapuolen GreenSock-kirjastoa voidaan käyttää myös animaatioihin. DOM-manipulointia varten jQueryn kerran hallitsema tehtävä, natiiviselaimen sovellusliittymät ovat sulkenut aukon.

Tehtäviin, joita ei voida tehdä vaniljakoodilla, Traversy suosittelee erikoistuneita kirjastoja yleistetyn kirjaston, kuten jQuery, sijaan. Traversy suosittelee myös JavaScript-kehysten, kuten React, Angular tai Vue, käyttöä keskikokoisiin ja suuriin sovelluksiin. Traversy suosittelee edelleen jQueryä käytettäväksi yksinkertaisissa sivustoissa, joissa ei ole kehystä.

jQuery-vaihtoehdot

Mitä sinun tulisi käyttää jQueryn sijaan? Nykyaikaisen vaniljan JavaScriptin lisäksi lyhyt luettelo jQuery-vaihtoehdoista sisältää Cash, Zepto ja Syncfusion Essential JS 2. Cash ja Zepto ovat avoimen lähdekoodin JavaScript-kirjastoja, jotka ovat saatavilla MIT-lisenssillä. Syncfusion Essential JS 2 on kaupallinen tuote.

Käteinen raha

Käteisellä on yli 3570 tähteä GitHubissa. Cashilla, joka laskutetaan ”järjettömän pieneksi jQuery-vaihtoehdoksi” nykyaikaisille selaimille, on jQuery-tyylinen syntaksia DOM: n manipulointiin ja se vie 32 kt tilaa pakkaamattomana. Käteinen tukee ominaisuuksia, kuten nimiavaruisia tapahtumia, TypeScript-tyyppejä ja moderneja koontiversioita. Voit ladata käteistä GitHubista.

Zepto

Zepto on kuvattu "minimalistiseksi JavaScript-kirjastoksi, jossa on pitkälti jQuery-yhteensopiva sovellusliittymä". Kehittäjät, jotka tuntevat jQueryn, osaavat jo käyttää Zeptoa, sen valmistajat sanovat. Zepto oletetaan olevan paljon pienempi ja nopeammin ladattava kuin jQuery, ja se voi toimia PhoneGap-työkalusarjan kanssa mobiili- ja työpöytäselaimille. Voit ladata Zepton projektin verkkosivustolta.

Syncfusion Essential JS 2

Syncfusion Essential JS 2 on kaupallisesti lisensoitu JavaScript-käyttöliittymä, joka ohjaa TypeScript-kirjoitettua kirjastoa. JCuery UI -kirjaston vaihtoehtona toimiva Syncfusion on suunniteltu pienikokoiseksi, kevyeksi ja modulaariseksi kirjastoksi verkkosovellusten parantamiseksi. Syncfusion tukee kehyksiä, kuten Angular, React ja Vue. Voit ostaa Syncfusion Essential JS 2: n tai ladata ilmaisen kokeiluversion Syncfusion-verkkosivustolta. Täydellinen lähdekoodi, yksikötestitiedostot, testiskriptejä ja live-esittelyt ovat saatavilla GitHubissa.