وضع و تقليل للعداد
الأهمية: 5
عدل الكود الخاص بالدالة makeCounter()
بحيث يمكن للعداد أيضاً أن يخفض أو يضبط العدد:
counter()
يجب أن تُرجِع الرقم التالي (كما في السابق).counter.set(value)
يجب أن تضع قيمة العداد إليvalue
.counter.decrease()
يجب أن تقلل قيمة العداد بفارق واحد.
إنظر لصندوق الكود بالأسفل لإستخدام المثال كاملاً
ملحوظة: يمكنك إستخدام إما الإغلاق أو خاصية الدالة للمحافظة على العداد الحالي. أو تستخدم الإثنين إذا أردت.
الحل يستخدم count
في المتغير المحلي، لكن الوظائف الإضافية تمت كتابتها بجانب counter
.
إنهم يتشاركون نفس البيئة المعجمية الخارجية ويمكنهم أيضاً الوصول إلى القيمة الحالية count
.
function makeCounter() {
let count = 0;
function counter() {
return count++;
}
counter.set = value => count = value;
counter.decrease = () => count--;
return counter;
}