الميزات الجديدة في Chrome 72

في الإصدار 72 من Chrome، أضفنا إمكانية استخدام ما يلي:

  • أصبح الآن إنشاء حقول فئة عامة في JavaScript أكثر وضوحًا.
  • يمكنك معرفة ما إذا تم تفعيل صفحة باستخدام واجهة برمجة التطبيقات الجديدة User Activation API.
  • أصبحت ترجمة القوائم أسهل بكثير باستخدام واجهة برمجة التطبيقات Intl.format().

وهناك الكثير غير ذلك.

اسمي بيت ليبيج. لنطّلِع على الميزات الجديدة للمطوّرين في الإصدار 72 من Chrome.

سجلّ التغييرات

لا يتناول هذا الأمر سوى بعض النقاط الأساسية، ويمكنك الاطّلاع على الروابط أدناه للتعرّف على التغييرات الإضافية في الإصدار Chrome 72.

حقول الفئة العامة

كانت لغتي الأولى هي Java، وكنت أجد صعوبة في تعلُّم JavaScript. كيف أنشأت صفًا دراسيًا؟ أو اكتساب؟ ماذا عن السمات والطرق العامة والخاصة؟ العديد من التعديلات الأخيرة على JavaScript التي تسهّل البرمجة المستندة إلى العناصر

يمكنني الآن إنشاء صفوف تعمل على النحو الذي أتوقعه، مكتملة بعوامل الإنشاء ووظائف الحصول والضبط والطُرق الثابتة والسمات العامة.

بفضل الإصدار 7.2 من V8، الذي يتم تضمينه في الإصدار 72 من Chrome، يمكنك الآن تحديد حقول ملف الوسائط العامة مباشرةً في تعريف الملف، ما يغني عن إجراء ذلك في ملف الوسائط المنشئ.

class Counter {
  _value = 0;
  get value() {
    return this._value;
  }
  increment() {
    this._value++;
  }
}

const counter = new Counter();
console.log(counter.value);
// → 0
counter.increment();
console.log(counter.value);
// → 1

نحن نعمل على إتاحة حقول الصفوف الخاصة.

يمكنك الاطّلاع على مزيد من التفاصيل في مقالة "ماتياس" حول حقول الفئات.

User Activation API

هل تتذكر عندما كانت المواقع الإلكترونية تشغّل الصوت تلقائيًا فور تحميل الصفحة؟ تحاول جاهدًا الضغط على مفتاح كتم الصوت، أو معرفة علامة التبويب التي كان الصوت شغّالاً فيها وإغلاقها. لهذا السبب، تتطلّب بعض واجهات برمجة التطبيقات تفعيلها من خلال إيماءة مستخدِم قبل أن تعمل. تتعامل المتصفّحات مع التفعيل بطرق مختلفة.

User activation API قبل تفاعل المستخدم مع الصفحة وبعده

يقدّم الإصدار 72 من Chrome الإصدار 2 من ميزة "تفعيل المستخدم"، ما يسهّل تفعيل المستخدمين في جميع واجهات برمجة التطبيقات المشروطة. ويستند إلى مواصفة جديدة تهدف إلى توحيد آلية التفعيل على جميع المتصفحات.

هناك سمة userActivation جديدة في كلّ من navigator وMessageEvent، تتضمّن سمتَين: hasBeenActive وisActive:

  • يشير الرمز hasBeenActive إلى ما إذا كانت النافذة المرتبطة قد سجّلت عملية إشعال للمستخدِم في مسارها.
  • يشير الرمز isActive إلى ما إذا كانت النافذة المرتبطة تحتوي حاليًا على خطوة فعالة متعلقة بالمستخدم في مسارها.

يمكنك الاطّلاع على مزيد من التفاصيل في مقالة جعل عملية تفعيل المستخدمين متسقة في جميع واجهات برمجة التطبيقات.

ترجمة قوائم الأشياء التي تحتوي على Intl.format

أحب واجهات برمجة تطبيقات Intl، فهي مفيدة جدًا في ترجمة المحتوى إلى لغات أخرى. في الإصدار 72 من Chrome، تتوفّر طريقة .format() جديدة تسهّل عرض القوائم. وعلى غرار واجهات برمجة تطبيقات Intl الأخرى، فإنها تنقل العبء إلى محرّك JavaScript بدون أن يؤثر ذلك في الأداء.

يمكنك إعدادها باستخدام اللغة التي تريدها، ثم استدعاء format، وستستخدم الكلمات وقواعد النحو الصحيحة. ويمكنها استخدام رموز العطف - التي تضيف المكافئة المترجَمة و (وانظر إلى فواصل أكسفورد الجميلة هذه). يمكنه تنفيذ عمليات الربط - إضافة ما يعادل أو في اللغة المحلية. ومن خلال تقديم بعض الخيارات الإضافية، يمكنك إجراء المزيد من الإجراءات.

const opts = {type: 'disjunction'};
const lf = new Intl.ListFormat('fr', opts);
lf.format(['chien', 'chat', 'oiseau']);
// → 'chien, chat ou oiseau'
lf.format(['chien', 'chat', 'oiseau', 'lapin']);
// → 'chien, chat, oiseau ou lapin'

يمكنك الاطّلاع على مشاركة Intl.ListFormat API للحصول على مزيد من التفاصيل.

وغير ذلك

هذه ليست سوى بعض التغييرات التي أجريناها على الإصدار Chrome 72 للمطوِّرين، وهناك المزيد من التغييرات الأخرى.

  • يغيّر الإصدار 72 من Chrome سلوك Cache.addAll() لمطابقة المواصفات بشكل أفضل. في السابق، إذا كانت هناك إدخالات مكرّرة في الطلب نفسه، كانت الطلبات اللاحقة ستحلّ محلّ الطلب الأول. لمطابقة المواصفات، في حال توفّر إدخالات مكرّرة، سيتم رفضها باستخدام InvalidStateError.
  • يعالج الخدمي الآن طلبات رموز التطبيقات المميّزة، ما دام عنوان URL للطلب من المصدر نفسه للخدمي.

اشتراك

إذا أردت البقاء على اطّلاع على فيديوهاتنا، يمكنك الاشتراك في قناة مطوّري Chrome على YouTube، وستتلقّى إشعارًا عبر البريد الإلكتروني عند نشر فيديو جديد.

اسمي بيت ليبيج، وفور طرح Chrome 73، سأكون في انتظارك لإخبارك بالجديد في Chrome!