قصة الوجبة الخفيفة:
لنفترض أن لديك سلة من الوجبات الخفيفة:
const snacks = ['apple', 'banana', 'chocolate'];
الآن، تريد مشاركة هذه الوجبات الخفيفة مع أصدقائك. ولكن بدلاً من إعطائهم السلة بأكملها، يمكنك إخراج كل وجبة خفيفة وإعطائها لهم واحدة تلو الأخرى:
console.log(...snacks); // Output: apple banana chocolate
عامل التشغيل (التوزيع) يشبه إخراج الوجبات الخفيفة من السلة وتوزيعها على الطاولة. يمكن لأصدقائك الآن التقاطها بشكل فردي!
من ناحية أخرى، إذا أحضر أصدقاؤك المزيد من الوجبات الخفيفة، فيمكنك جمعها جميعًا في سلة واحدة كبيرة باستخدام ... (الراحة) المشغل:
function collectSnacks(...moreSnacks) { console.log(moreSnacks); } collectSnacks('cookie', 'chips', 'juice'); // Output: ['cookie', 'chips', 'juice']
هنا، يقوم المشغل بجمع كل الوجبات الخفيفة في سلة جديدة. هذه هي الطريقة التي يعمل بها المشغل الباقي!
إذا كنت جديدًا في استخدام JavaScript، فربما تكون قد صادفت عنصرين خاصين في بناء الجملة: عوامل الانتشار والاستراحة. كلاهما يبدوان متشابهين — ثلاث نقاط (...) — ولكن يتم استخدامهما بطرق مختلفة. دعونا نقسمها بأمثلة بسيطة!
1. ما هو عامل الانتشار؟
يتم استخدام عامل الانتشار (...) لتوسيع مصفوفة أو كائن إلى عناصر فردية. إنه مثل تفريغ مصفوفة أو كائن في مكوناته.
مثال: توسيع مصفوفة
لنفترض أن لديك مجموعة من الأرقام، وتريد تمريرها بشكل فردي إلى دالة.
const numbers = [1, 2, 3]; console.log(...numbers); // Output: 1 2 3
يمكنك استخدام عامل الانتشار لنشر عناصر المصفوفة!
مثال: دمج المصفوفات
إذا كان لديك مصفوفتين وتريد دمجهما، فإن عامل الانتشار يجعل الأمر سهلاً:
const array1 = [1, 2, 3]; const array2 = [4, 5, 6]; const mergedArray = [...array1, ...array2]; console.log(mergedArray); // Output: [1, 2, 3, 4, 5, 6]
يشبه وضع جميع العناصر من array1 وray2 في مصفوفة واحدة جديدة.
مثال: نسخ كائن
يمكنك أيضًا استخدام عامل الانتشار مع الكائنات:
const user = { name: "Ahmed", age: 25 }; const updatedUser = { ...user, location: "Bengaluru" }; console.log(updatedUser); // Output: { name: "Ahmed", age: 25, location: "Bengaluru" }
هنا، قمنا بنسخ الخصائص من كائن المستخدم وأضفنا موقعًا جديدًا للخاصية.
مثال: وظيفة مع معلمات الراحة
تخيل أنك تكتب دالة تأخذ أي عدد من الوسائط:
function addNumbers(...nums) { return nums.reduce((sum, current) => sum current, 0); } console.log(addNumbers(1, 2, 3, 4)); // Output: 10
في هذه الحالة، يقوم عامل التشغيل الباقي ...nums بتجميع كافة الوسائط في مصفوفة، مما يسهل العمل مع قيم متعددة.
مثال: التدمير مع الراحة
يمكنك أيضًا استخدام عامل الراحة عند تدمير المصفوفات:
const [first, ...rest] = [1, 2, 3, 4]; console.log(first); // Output: 1 console.log(rest); // Output: [2, 3, 4]
هنا، أولاً يتم الحصول على العنصر الأول من المصفوفة، والباقي يجمع العناصر المتبقية في مصفوفة جديدة.
خاتمة
تعد عوامل الانتشار والراحة أدوات قوية ومتعددة الاستخدامات في JavaScript. للتلخيص:
آمل أن تفهم هذين المفهومين وأن ينتشرا ويرتاحا، فهذا سيجعل كود JavaScript الخاص بك أكثر إيجازًا وأسهل في القراءة!
برمجة سعيدة :)
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3