การเปิดตัวไลบรารี JavaScript jQuery 4.0

เกือบ 10 ปีหลังจากการเปิดตัวเวอร์ชัน 3.0 และ 20 ปีหลังจากการก่อตั้งโครงการ ไลบรารี JavaScript jQuery 4.0 ก็ได้ถูกปล่อยออกมาแล้ว ตามข้อมูลจาก W3Techs พบว่า 70.9% ของเว็บไซต์ที่มีผู้เข้าชมมากที่สุด 10 ล้านอันดับแรกบนอินเทอร์เน็ตใช้งาน jQuery โค้ดของ jQuery เผยแพร่ภายใต้ใบอนุญาต MIT

การเปิดตัว jQuery 4.0 มีการเปลี่ยนแปลงที่ทำให้ไม่สามารถใช้งานร่วมกับเวอร์ชันก่อนหน้าได้ แต่ผู้พัฒนาได้ให้ความมั่นใจกับผู้ใช้ส่วนใหญ่ว่าพวกเขาสามารถย้ายไปใช้เวอร์ชันใหม่ได้อย่างราบรื่นโดยมีการเปลี่ยนแปลงโค้ดเพียงเล็กน้อย สามารถใช้ปลั๊กอินเฉพาะเพื่อทำให้การย้ายข้อมูลทำได้ง่ายขึ้น การเปลี่ยนแปลงที่ทำให้ไม่สามารถใช้งานร่วมกับเวอร์ชันก่อนหน้าได้ ได้แก่ การลบโค้ดที่เลิกใช้งานแล้ว การลบพารามิเตอร์ภายในที่ไม่ได้รับการบันทึกไว้บางส่วน การยกเลิกการใช้งานพฤติกรรมที่ซับซ้อนเกินไปบางอย่าง และการยกเลิกการใช้งาน API ที่เคยถูกยกเลิกการใช้งานไปแล้ว การลบ API และเบราว์เซอร์ที่เลิกใช้งานแล้วทำให้ขนาดของไฟล์บีบอัด gzip ที่มีไลบรารีลดลง 3 KB (เวอร์ชันแบบบางมีขนาด 19.5 KB และเวอร์ชันเต็มมีขนาด 27.5 KB)

ท่ามกลางการเปลี่ยนแปลง:

  • การสนับสนุนสำหรับ IE 10 และเบราว์เซอร์รุ่นเก่ากว่าได้ถูกยกเลิกแล้ว (ยังคงรองรับ IE 11 แต่จะถูกลบออกใน Query 5.0) รวมถึงเบราว์เซอร์รุ่นเก่าอื่นๆ เช่น Edge Legacy ด้วย Android เบราว์เซอร์และ Firefox เวอร์ชันไม่เกิน 115
  • มีการเพิ่มการรองรับ Trusted Types API เข้ามาแล้ว API นี้ออกแบบมาเพื่อป้องกันการเปลี่ยนแปลง DOM ที่นำไปสู่การโจมตีแบบ Cross-Site Scripting (DOM XSS) เช่น การประมวลผลข้อมูลที่ผู้ใช้ป้อนอย่างไม่ถูกต้องในบล็อก eval() หรือการแทรก ".innerHTML" ซึ่งอาจนำไปสู่การเรียกใช้โค้ด JavaScript ในบริบทของหน้าเว็บเฉพาะนั้นๆ เมธอดของ jQuery สามารถรับโค้ด HTML ในรูปแบบของออบเจ็กต์ TrustedHTML ได้แล้ว
  • โค้ด jQuery ได้ถูกแปลงให้ใช้โมดูล JavaScript แบบ ESM (ECMAScript Module) แล้ว และสามารถจัดส่งและนำเข้าเป็นโมดูลได้
  • ฟังก์ชันต่อไปนี้ถูกลบออกและเคยถูกทำเครื่องหมายว่าเลิกใช้งานแล้ว: jQuery.isArray, jQuery.parseJSON, jQuery.trim, jQuery.type, jQuery.now, jQuery.isNumeric, jQuery.isFunction, jQuery.isWindow, jQuery.camelCase, jQuery.nodeName, jQuery.cssNumber, jQuery.cssProps และ jQuery.fx.interval ขอแนะนำให้ใช้ฟังก์ชัน JavaScript มาตรฐาน เช่น Array.isArray(), JSON.parse(), String.prototype.trim() และ Date.now() แทนฟังก์ชันเหล่านี้
  • ลบเมธอดภายในที่ไม่ได้รับการบันทึกไว้ของอ็อบเจ็กต์ Array ออก ได้แก่ push, sort และ splice
  • ลำดับการจัดการเหตุการณ์การเปลี่ยนโฟกัสได้รับการปรับให้สอดคล้องกับข้อกำหนดของ W3C แล้ว ได้แก่ blur, focusout, focus และ focusin
  • ขนาดของเวอร์ชันแบบบาง ซึ่งไม่รวมโมดูล Ajax และ Effects นั้นลดลงเหลือ 19.5k โดยการหยุดการส่งอ็อบเจ็กต์ Deferred (แนะนำให้ใช้ Promises มาตรฐาน) และ Callback

ที่มา: opennet.ru

ซื้อโฮสติ้งที่เชื่อถือได้สำหรับไซต์ที่มีการป้องกัน DDoS เซิร์ฟเวอร์ VPS VDS 🔥 ซื้อบริการเว็บโฮสติ้งที่เชื่อถือได้ พร้อมระบบป้องกัน DDoS และเซิร์ฟเวอร์ VPS/VDS | ProHoster