- يُعد jQuery 4.0 أول إصدار رئيسي منذ ما يقرب من 10 سنوات، ويتزامن ذلك مع الذكرى السنوية العشرين للمكتبة.
- تم إيقاف دعم Internet Explorer 10 والمتصفحات الأقدم، بينما يظل IE 11 مدعومًا حتى jQuery 5.0.
- تم نقل الكود المصدري من AMD إلى وحدات ES، وأصبح حجم الإصدار النحيف الآن حوالي 19.5 كيلوبايت مضغوطة باستخدام gzip.
- يعمل دعم الأنواع الموثوقة والالتزام بمعايير أحداث التركيز الخاصة بـ W3C على تحسين الأمان والاتساق عبر المتصفحات.
أصدر فريق jQuery رسميًا الإصدار 4.0 من مكتبة جافا سكريبت الشهيرة، مسجلاً بذلك أول تحديث رئيسي لها منذ ما يقارب عقدًا من الزمن. ويأتي هذا الإصدار بالتزامن مع احتفال المكتبة بالذكرى السنوية العشرين لإطلاقها الأول في 14 يناير 2006. يُقدّم jQuery 4.0 تحديثات شاملة مع الحفاظ على البساطة وتجربة المطورين. مما جعلها عنصراً أساسياً في تطوير الويب. ركز الفريق على تقليص حجم التعليمات البرمجية القديمة، وإزالة واجهات برمجة التطبيقات المهملة، والتخلي عن دعم المتصفحات القديمة، مما أدى إلى مكتبة أكثر كفاءة وأداءً.
وفقًا للمطور الرئيسي تيمي ويليسون، يجب أن يكون معظم المستخدمين قادرين على الترقية بأقل قدر من التغييرات في التعليمات البرمجية الخاصة بهم، مدعومين بدليل ترقية شامل ومكون إضافي محدث لـ jQuery Migrate. المكتبة متاحة عبر شبكة توصيل المحتوى jQuery و npm (npm install jquery@4.0.0)، وقد انتقل المشروع من استخدام RequireJS إلى Rollup للتغليف. وكان رد فعل المجتمع إيجابيًا إلى حد كبير، حيث أعرب العديد من المطورين عن تقديرهم لإزالة الحلول القديمة التي لم تعد ضرورية في المتصفحات الحديثة.
دعم المتصفحات والتغييرات الجذرية
أحد أهم التغييرات في jQuery 4.0 هو إزالة دعم Internet Explorer 10 والمتصفحات القديمة، بما في ذلك Edge Legacy، وإصدارات iOS الأقدم من الإصدارات الثلاثة الأخيرة، ومتصفح Android. لا يزال متصفح إنترنت إكسبلورر 11 مدعومًا في هذا الإصدارعلى الرغم من أن الفريق أشار إلى أنه سيتم إزالة الدعم في jQuery 5.0، فقد سمحت هذه التغييرات للمكتبة بتقليص حجمها بأكثر من 3 كيلوبايت من التعليمات البرمجية المضغوطة، مما جعلها أصغر حجمًا وأسرع. وقد تم تقليص حجم النسخة المُصغّرة، التي تزيل Deferreds وCallbacks، إلى حوالي 19.5 كيلوبايت مضغوطة، حيث أصبحت Promises الأصلية متاحة الآن في جميع المتصفحات المدعومة باستثناء IE 11.

التحديث: وحدات ES والأنواع الموثوقة
تم نقل شفرة المصدر للمكتبة من AMD إلى وحدات ES، مما يجعل jQuery متوافقًا مع أدوات البناء الحديثة وسير العمل التطويري. يمكن للمطورين الآن استيراد jQuery مباشرةً كوحدات ES من خلال استخدام <script type="module"> بالإضافة إلى ذلك، يدعم jQuery 4.0 أنواع البيانات الموثوقة، مما يضمن إمكانية استخدام HTML المُغلّف بـ TrustedHTML كمدخلات لأساليب معالجة jQuery دون انتهاك توجيهات سياسة أمان المحتوى (CSP). كما قام الفريق بتحويل معظم طلبات البرامج النصية غير المتزامنة لاستخدام <script> استخدام الوسوم بدلاً من البرامج النصية المضمنة لتجنب أخطاء سياسة أمان المحتوى (CSP).
تمت إزالة واجهات برمجة التطبيقات وتغييرات أحداث التركيز
تمت إزالة العديد من الوظائف المهملة، بما في ذلك jQuery.isArray, jQuery.parseJSON, jQuery.trimو jQuery.nowحيث توفر المتصفحات الحديثة الآن بدائل أصلية مثل Array.isArray(), JSON.parse(), String.prototype.trim()و Date.now(). لم تعد طرق المصفوفات الداخلية مثل push و sort و splice جزءًا من نموذج jQuery الأولي وتتصرف الآن تمامًا مثل دوال المصفوفات الأصلية. أما فيما يتعلق بمعالجة الأحداث، فلم يعد jQuery 4.0 يتجاوز السلوك الأصلي لأحداث التركيز وفقدان التركيز؛ بل يلتزم بمواصفات W3C الحالية، مما قد يؤثر على منطق الأحداث الحالي ولكنه يضمن سلوكًا متسقًا عبر جميع المتصفحات المدعومة.
وقد أبرزت تعليقات المجتمع على HackerNews و Reddit أن كود jQuery لا يزال "أقصر وأنظف وأكثر سهولة في الاستخدام من بدائل JavaScript الحديثة العادية". لا يزال العديد من المطورين يعتمدون على jQuery لصيانة قواعد البيانات البرمجية الكبيرة الموجودةيُتيح jQuery التحسين التدريجي، والمواقع المُعالجة من جانب الخادم، والتفاعلات البسيطة دون الحاجة إلى إطار عمل كامل. ولا تزال استقرار المكتبة وقابليتها للتنبؤ في بيئة من أطر العمل سريعة التغير موضع تقدير. مع الإصدار 4.0، يُثبت jQuery أنه لا يزال خيارًا عمليًا للعديد من السيناريوهات، ولا تزال مكانته الممتدة لعشرين عامًا راسخة.