كيفية تعيين قيم المعلمات الافتراضية في JavaScript

اكتشف كيفية إضافة قيمة معلمة افتراضية إلى دالة JavaScript

تم إدخال قيم المعلمات الافتراضية فيES6في عام 2015 ، ونُفذت على نطاق واسع في المتصفحات الحديثة.

هذا الdoSomethingالوظيفة التي تقبلparam1.

const doSomething = (param1) => {

}

يمكننا إضافة قيمة افتراضية لـparam1إذا تم استدعاء الوظيفة دون تحديد معامل:

const doSomething = (param1 = 'test') => {

}

هذا يعمل مع المزيد من المعلمات أيضًا ، بالطبع:

const doSomething = (param1 = 'test', param2 = 'test2') => {

}

ماذا لو كان لديك كائن فريد به قيم معلمات؟

ذات مرة ، إذا اضطررنا إلى تمرير كائن من الخيارات إلى وظيفة ، من أجل الحصول على القيم الافتراضية لهذه الخيارات إذا لم يتم تحديد أحدها ، كان عليك إضافة القليل من التعليمات البرمجية داخل الوظيفة:

const colorize = (options) => {
  if (!options) {
    options = {}
  }

const color = (‘color’ in options) ? options.color : ‘yellow’ … }

باستخدام التدمير ، يمكنك توفير قيم افتراضية ، مما يبسط الكود كثيرًا:

const colorize = ({ color = 'yellow' }) => {
  ...
}

إذا لم يتم تمرير أي كائن عند استدعاءcolorizeوظيفة ، وبالمثل يمكننا تعيين كائن فارغ افتراضيًا:

const spin = ({ color = 'yellow' } = {}) => {
  ...
}

المزيد من دروس js: