تعد التدمير واحدة من أروع الميزات في JavaScript لأنها تجعل العمل مع الكائنات والمصفوفات أمرًا سهلاً. لذلك، دعونا نفهم ذلك.
تخيل أنك حصلت على صندوق مليء بالعناصر العشوائية، وبدلاً من سحبها واحدًا تلو الآخر، يمكنك فقط فتح الصندوق والحصول على ما تحتاجه بالضبط على الفور. هذا ما تفعله عملية التدمير للتعليمات البرمجية الخاصة بك!
عندما يتعلق الأمر بالكائنات، تتيح لك عملية التدمير انتقاء خصائص معينة وتعيينها للمتغيرات بسهولة:
const user = { name: "Alice", age: 30, city: "New York" }; const { name, age } = user;
يمكنك أيضًا إعادة تسمية المتغيرات بسرعة، مثل هذا:
const { name: userName, age: userAge } = user;
لكن الأمر يصبح أكثر روعة عند التعامل مع المصفوفات، لأنه لا يسمح لك فقط بسحب القيم وتعيينها للمتغيرات، ولكن يمكنك أيضًا تخطي القيم التي لا تحتاج إليها:
const colors = ["red", "green", "blue"]; const [firstColor, , thirdColor] = colors; // green is skipped
أو حتى قم بتعيين القيم الافتراضية إذا كان هناك شيء مفقود:
const [أحمر، أخضر، أصفر = "أصفر"] = الألوان؛ // تم تعيين اللون الأصفر كافتراضي
إحدى ميزات التدمير المفضلة لدي هي ... صيغة الراحة - فهي تسمح لك بالحصول على بعض القيم وتجميع الباقي في متغير آخر:
const numbers = [1, 2, 3, 4, 5]; const [first, ...rest] = numbers; console.log(first); // 1 console.log(rest); // [2, 3, 4, 5]
وتخمين ماذا؟ إنه يعمل أيضًا مع الكائنات:
const user = { name: "Alice", age: 30, city: "New York" }; const { name, ...otherDetails } = user; console.log(otherDetails); // { age: 30, city: "New York" }
تعمل عملية التدمير على جعل التعليمات البرمجية الخاصة بك أكثر وضوحًا وأسهل في القراءة وأكثر متعة في الكتابة. لذا، في المرة القادمة التي تتعامل فيها مع كائنات أو مصفوفات في JavaScript، جرب عملية التدمير - فمن المحتمل أن تجد أن ذلك يبسط تجربة البرمجة الخاصة بك!
للبقاء على اطلاع بالمزيد من المحتوى المتعلق بتطوير الويب والذكاء الاصطناعي، لا تتردد في متابعتي. دعونا نتعلم وننمو معًا!
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3