Izdavanje JavaScript biblioteke jQuery 4.0

Nakon gotovo 10 godina od objave grane 3.0 i 20 godina nakon osnivanja projekta, objavljena je verzija 4.0 JavaScript biblioteke jQuery, koja se prema podacima organizacije W3Techs koristi na 70.9% od 10 milijuna najposjećenijih stranica na mreži. Kod jQuery-ja distribuira se pod MIT licencom.

Izdanje jQuery 4.0 sadrži promjene koje narušavaju unatrag kompatibilnost, ali prema uvjerenju programera, većina korisnika moći će bez poteškoća preći na novu verziju uz minimalne promjene u vlastitom kodu. Za olakšavanje migracije može se koristiti poseban plugin. Narušavanja unatrag kompatibilnosti povezana su s uklanjanjem zastarjelog koda, uklanjanjem nekih internih nedokumentiranih parametara, ukidanjem podrške za određeno prekomplicirano ponašanje i nasilnim ukidanjem podrške za API-je koji su ranije označeni kao zastarjeli. Uklanjanje zastarjelih API-ja i preglednika omogućilo je smanjenje veličine gzip arhive s bibliotekom za 3 KB (slim verzija sada zauzima 19.5 KB, a puna 27.5 KB).

Između izmjena:

  • Prekida se podrška za preglednik IE 10 i starije verzije (podrška za IE 11 ostaje, ali će biti uklonjena u Query 5.0), kao i druge stare preglednike poput Edge Legacy, Android Browser-a i Firefoxa do grane 115.
  • Ugrađena je podrška za API Trusted Types, razvijen za zaštitu od manipulacija s DOM-om koje dovode do međusajtnog skriptiranja (DOM XSS), na primjer, prilikom nepravilne obrade podataka primljenih od korisnika u blokovima eval() ili umetanja «.innerHTML», što može dovesti do izvođenja JavaScript koda u kontekstu određene stranice. HTML kod u obliku TrustedHTML objekata sada se može proslijediti metodama jQuery.
  • Kod jQuery-ja prebačen je na korištenje JavaScript modula ESM (ECMAScript Module) i može se isporučivati i uvoziti kao modul.
  • Uklonjene su funkcije koje su prethodno označene kao zastarjele: jQuery.isArray, jQuery.parseJSON, jQuery.trim, jQuery.type, jQuery.now, jQuery.isNumeric, jQuery.isFunction, jQuery.isWindow, jQuery.camelCase, jQuery.nodeName, jQuery.cssNumber, jQuery.cssProps i jQuery.fx.interval. Umjesto tih funkcija preporučuje se koristiti standardne JavaScript funkcije Array.isArray(), JSON.parse(), String.prototype.trim() i Date.now()
  • Uklonjene su nedokumentirane interne metode objekta Array — push, sort i splice.
  • Redoslijed obrade događaja promjene fokusa usklađen je sa specifikacijom W3C — blur, focusout, focus i focusin.
  • Veličina skraćene verzije (slim), koja ne sadrži ajax module i efekte, smanjena na 19.5k uklanjanjem Deferred objekata (preporučuje se korištenje standardnih Promises) i Callbacks.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster