اذهب إلى المحتوى

Mustafa Mahmoud7

الأعضاء
  • المساهمات

    834
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    1

كل منشورات العضو Mustafa Mahmoud7

  1. بإمكانك التوجه إلى مركز المساعدة وإذا لم تجد إجابة على أسئلتك بإمكانك التحدث معهم لايف بالطبع https://support.academy.hsoub.com
  2. تستخدم الدالة unshift لإضافة عنصر جديدة للمصفوفة في بدايتها أيا كان نوع العنصر (نص,رقم,مصفوفة,كائن) وهى تقوم بالتعديل فى المصفوفة الأساسية وهى تعتبر عكس الpush التى تضيف فى النهاية مثال لاضافة عنصر واحد نلاحظ انه تم اضافته فى بداية المصفوفة var food = ['banana', 'apple', 'carrot']; food.unshift('pinapple'); console.log(food); //النتيجة ستكون ['pinapple', 'banana', 'apple', 'carrot'] مثال أخر لإضافة عنصريين نلاحظ أنه أضاف العنصريين فى مرة واحدة فى بداية المصفوفة var food = ['banana', 'apple', 'cartot']; food.unshift('pinapple', 'concumber'); console.log(food); //النتيجة ستكون ['pinapple', 'concumber', 'banana', 'apple', 'cartot'] وفى المثال الخاص بك let x = [19, 1, 2, 3, 4, 5, 10]; function fun(arr) { let cope = []; for (let i in arr) { cope.unshift(arr[i]); } return cope; } console.log(fun(x)); //النتيجة ستكون [10, 5, 4, 3, 2, 1, 19] عند استدعاء الدالة fun ثم الدخول للحلقة التكرارية for فى كل مرة يتم إضافة عنصر من المصفوفة x فى بداية المصفوفة cope في أول تكرار cope = [19]; ثاني تكرار cope = [1,19] ثالث تكرار cope = [2,1,19] الى نهاية التكرار نلاحظ فى كل مرة يتم اضافة العنصر قى بداية المصفوفة لتصبح النتيجة النهائية console.log(cope) [10, 5, 4, 3, 2, 1, 19]
  3. بما أن المترجمات ( interpreter ) تقوم بتنفيذ البرنامج بشكلٍ مباشر فإنها تساهم بتوفير الوقت المرتبط بإنجاز عملية compile، كما أنه وبسبب قيامها بإصدار رسائل الخطأ عند السطر الذي تم إيجاد الخطأ عنده، تعتبر عملية البحث عن الأخطاء أسهل في لغات البرمجة المترجمة مقياساً مع مثيلاتها المترجمة. بسبب عدم قيام المترجم بتحليل الشيفرة المصدرية بالكامل وعدم توليده لأي برامج تنفيذية، فإنه يتوّجب في كل مرة يتم فيها تشغيل البرنامج إجراء عملية التفسير بالكامل وقراءة البرنامج وتحليله وتنفيذه سطراً تلو الآخر، ما يجعل اللغات المفسرات أبطأ عادةً من اللغات المترجمة عندما يتعلق الموضوع بزمن التنفيذ إلا أنها لا تستوجب نفس متطلبات الذاكرة الخاصة باللغات التى تحتاج compile كونها لا تقوم بتوليد أي برامج تنفيذية بل يتم تنفيذ البرنامج بشكلٍ مباشر من المترجم
  4. في بحث الإعدادات ابحث عن Emmet: Show Expanded Abbreviation وقم باعادة التعيين لتصبح always
  5. عدل هذه القيم لتصبح on واجعلها مفعلة 1- قم بعمل اعادة تشغيل ل VS code 2- حدث VS code 3- قم بعمل اعادة تشغيل للجهاز إذا لم يفلح الأمر قم بعمل reste settings الاختيار الاخير هو حذف البرنامج واعادة تثبيته من جديد
  6. قبل كل شئ عليك التأكد أنه تم تثبيت النود على جهازك للتأكد أنه تم عملية التثبيت افتح الcmd في أى مكان وأكتب node ثم enter سيتم ظهور اصدار الnode ثم بترتيب الصور لكى تصل إلى enviroments variables إذا لم تكن موجود يمكن إضافتها
  7. هل انت ثبت النود على جهازك ؟ للتأكد أنه تم عملية التثبيت افتح الcmd في أى مكان وأكتب node ثم enter سيتم ظهور اصدار الnode هل انت تواجه مشكلة في كتابة أوامر النود؟ لكى يتم تشغيل الملف الذي الذي تكتب فيه افتح ال cmd فى المجلد الذي يحتوى الملف ثم node index ثم enter
  8. يمكن فتح الcmd عن طريق فتح مجلد المشروع ثم كتابة cmd فى شريط العنوان ثم enter ثم يتم فتح مباشرة على المشروع أو يمكن فتح ال Terminal على المجلد الذى تريد في VS سيتم فتحه أيضا في VS Code
  9. ممكن فديو يوضح المشكلة بالظبط لكى تتضح المشكلة أكثر
  10. الموقع يعمل بشكل جيد سواء على الموبايل أو الديسكتوب عند عمل الموقع يتم اعداده ليكون شكله جيد سواء على الموبايل أو الديسكتوب أى يكون متجاوب مع معظم أحجام الشاشات لأنه لو تم اعداده ليكن بحجم واحد على علي كل الشاشات هذا سيكون سئ للمستخدم. تصميم المواقع المتجاوبة هو أسلوب لتطوير وتنسيق محتوى المواقع يهتم بشكل ظهور الموقع وكفاءة عمله باختلاف الجهاز الذي يستخدمه الزائر في التصفح؛ حيث يظهر بوضوح عند فتحه من الهاتف أو الكمبيوتر. تتشابه المواقع المتجاوبة مع الماء الذي يأخذ شكل الإناء الموضوع به؛ حيث يمكن تشبيه محتوى الموقع بالماء وجهاز المستخدم بالإناء وبالتالي يأخذ المحتوى شكل أي جهاز يتم فتحه من خلاله. مزايا تصميم مواقع الويب المتجاوبة تؤدي المواقع المتجاوبة مع جميع الأجهزة نتائج جيدة مقارنةً بغيرها، وتتمثل أهم مزاياها فيما يلي: زيادة عدد المستخدمين يضمن تصميم مواقع الويب المتجاوبة مع جميع الأجهزة زيادة عدد الزوار ومستخدمي الموقع، وذلك لأن حركة المرور إلى هذه المواقع تأتي من أجهزة مختلفة وبالتالي يمكن لأي شخص الوصول إلى موقعك من أي جهاز. تحسين تجربة المستخدم المواقع المتجاوبة مع جميع الأجهزة تجعل تجربة المستخدم أفضل على عكس المواقع المتجاوبة مع الأجهزة المكتبية فقط أو الهواتف الذكية فقط التي تجعل فئة كبيرة من الزوار لا يتمكنون من استخدام الموقع بسهولة. سرعة التحميل يمكن تصفح جميع مواقع الويب المتجاوبة من أي جهاز بسرعة حيث تتكيف مع حجم كل شاشة ودرجة وضوحها وتظهر بالطريقة التي تسهل على الزائر استخدامها والتنقل بين أقسام وصفحات الموقع بسهولة. تحسين محركات البحث المواقع المتجاوبة مع الهواتف الذكية يتم ترتيبها في النتائج الأولى على محركات البحث لأنها توفر تجربة استخدام جيدة، وبالتالي يزيد ذلك من عدد زوار الموقع.
  11. يعتمد الاختيار بين PHPوPython وNode.js على متطلبات مشروعك المحددة والنظام البيئي الذي تعمل فيه. PHP تُستخدم بشكل شائع لتطوير الويب وهي معروفة ببساطتها وسهولة استخدامها ورائعة لتطوير الويب وتتكامل بشكل جيد مع مجموعة متنوعة من خوادم الويب وقواعد البيانات وأنظمة إدارة المحتوى. أطر العمل الأشهر لبي اتش بي { Laravel - CodeIgniter } بايثون هي لغة متعددة الاستخدامات مع تركيز قوي على سهولة القراءة والبساطة، مما يجعلها مناسبة لمختلف التطبيقات بما في ذلك خوادم الويب، وتحليل البيانات، والذكاء الاصطناعي. أطر العمل الأشهر لبايثون { Django - flask } جافاسكربت (Node.js) هي بيئة تشغيل تسمح لك بتشغيل JavaScript على الخادم، مما يجعلها خيارًا شائعًا لإنشاء تطبيقات قابلة للتطوير. دعم قوي للتطبيقات في الوقت الفعلي: إذا كنت تقوم بإنشاء تطبيق في الوقت الفعلي (مثل الدردشة أو اللعبة)، فإن Node.js يعد خيارًا رائعًا. إن هندستها المستندة إلى الأحداث مناسبة تمامًا لتطبيقات الوقت الفعلي، خاصة تلك التي تتطلب WebSocket للاتصال مزدوج الاتجاه. أطر العمل الأشهر لنود جي اس { NestJS - Express js } كل لغة واطار عمل يعتمد على المشروع الذى تريد عمله بهذه اللغة لكل منهم ايجابيات وسلبيات ويعتمد هل أنت محترف أم أنت في بداية تعلمك للبرمجة. للمزيد اطلع على هذه المقالات لتعرف أكثر عن الفرق بين تقنيات الواجهة الخلفية المختلفة
  12. للأسف ظروف الناس متغيرة من شخص لأخر بالنسبة للوقت فلا تستطيع أن تقول كل يوم 3 ساعات أو أكثر أو أقل الشئ الثانى يتوقف على المعلومة وفهمها فاستيعابنا جميعا يختلف عن بعضنا البعض فالمعلومة التى تفهمها أنت وتتطبق عليها قد يتطلب منك وقت بسيط أو ساعات على الأكثر ولكن ربما لى مثلا يستغرق منى أيام فلا نستطيع أن نفرض على أى شخص وقت معين أو جدول لهذه للأسباب. فقط مطلوب منك أن تذاكر بشكل منتظم وتطبق على كل معلومة جديدة وتذاكر بترتيب الدورة فهى متدرجة فى المعلومات والتطبيقات ومستوى الصعوبة.
  13. هذا بسبب أن الدالة () merge تأخذ عناصر مصفوفتين مرتبتين وتدمجهم وتعطي لنا مصفوفة واحدة مرتبة مكونة من عناصر المصفوفتين. ()firstnumbers.begin: المؤشر الذي يشير إلى العنصر الأول في مصفوفة firstnumbers. سيتم بدء عملية الدمج من هذا الموقع في المصفوفة الأولى. ()firstnumbers.end : المؤشر يشير إلى موقع بعد العنصر الأخير في مصفوفة firstnumbers. يمثل هذا نهاية المدى الذي سيتم دمجه في المصفوفة الأولى. ()secondnumbers.begin : المؤشر يشير إلى العنصر الأول في مصفوفة secondnumbers. سيتم بدء عملية الدمج من هذا الموقع في المصفوفة الثانية. ()secondnumbers.end : المؤشر يشير إلى موقع بعد العنصر الأخير في مصفوفة secondnumbers. يمثل هذا نهاية المدى الذي سيتم دمجه في المصفوفة الثانية. ()total.begin : المؤشر يشير إلى الموقع الذي سيبدأ فيه تخزين العناصر المدموجة. بمجرد دمج العناصر، سيتم تخزينها في المصفوفة total ابتداءً من هذا الموقع.
  14. عملية رفع الموقع لا تتم على جوجل ولكن تتم على استضافة تستضيف موقع سواء مجانية أو مدفوعة فلكى تتم عملية الرفع - عليك حجز اسم الموقع النطاق الخاص بك مثل (www.example.com) نطاق مدفوع عند الذهاب لهذا النطاق يتم الوصول للموقع الخاص بك. - عليك الاشتراك في استضافة سواء مجانية أو مدفوع لكى ترفع الموقع عليه ويكون متاح دائما. - بعد ذلك عليك ربط الاستضافة بالنطاق الخاص بك لكي يتم الوصل لموقعك عن طريق النطاق. - يوجد مثلا بعض المواقع التى تقدم الخدمة المدفوعة شراء دومين واستضافة مثل جودادى أو هوستنجر ويمكنك بالطبع شراء النطاق من موقع وشراء الإستضافة من موقع أخر ويتم الربط بعد ذلك. -يوجد بعض المواقع تقدم الاستضافة المجانية مثل netlify أو vercel وتعطيك اسم تحت اسمهم مثل(vercel.app.الاسم الخاص بك) قبل عملية الرفع عليك الاهتمام بال SEO تحسين محركات البحث لكى يظهر موقعك فى نتائج متقدمة على جوجل للمزيد انظر هذه المقالات لكى تتضح الصورة أكثر
  15. ال closure (الإغلاق) : يشير هذا المصطلح الى أنه يمكن للدوال الداخلية الوصول إلى المتغيرات بداخل نطاق الدوال الخارجية حتى بعد الانتهاء من تنفيذ الدالة الخارجية. ده مثال بسيط function outer() { const b = 50; function inner() { const a = 100; console.log(`a is ${a} and b is ${b}, the sum is ${a + b}`); } return inner; } const fnFirst = outer(); // هنا تم تنفيذ الدالة الخارجية وانتهت وكل متغير داخلها أصبح غير موجود ونتيجتهاارجاع الدالة الداخلية بالطبع أخذت حق الوصول إلى القيمة b fnFirst() //هنا تم تنفيذ ما بداخل الدالة الداخلية بالرغم من أن المتغير لم يعد موجود //بعدالاستدعاء سيتم طباعة a is 100 and b is 50, the sum is 150 ولكن فيما يفيدنا في الحقيقة ويتم توفيره لنا مثال مفيد أكثر يوضح لما نستخدم الclosure في هذا المثال هنا استدعينا الدالة في كل مرة اريد تنفيذ الدالة بنفس المعاملات في أى مكان ارسل لها المعاملات function greeting(firstName, lastName) { var message = "Hello " + firstName + " " + lastName + "!"; console.log(message); } greeting("Billy", "Bob"); //Hello Billy Bob! greeting("Billy", "Bob"); //Hello Billy Bob! greeting("Billy", "Bob"); //Hello Billy Bob! greeting("Luke", "Schlangen");//Hello Luke Schlangen! greeting("Luke", "Schlangen");//Hello Luke Schlangen! greeting("Luke", "Schlangen");//Hello Luke Schlangen! ولكن مع الclosure يوفر لنا اننا ننفذ الدالة الخارجية ونرسل لها المعاملات ويتم الوصول له بالدالة الداخلية. function greeting(firstName, lastName) { var message = "Hello " + firstName + " " + lastName + "!"; return function() { console.log(message); } } var greetingBilly = greeting("Billy", "Bob"); var greetingLuke = greeting("Luke", "Schlangen"); greetingBilly();//Hello Billy Bob! greetingBilly();//Hello Billy Bob! greetingBilly();//Hello Billy Bob! greetingLuke();Hello Luke Schlangen! greetingLuke();Hello Luke Schlangen! greetingLuke();Hello Luke Schlangen! مثال أخر يبين أنه بعد تنفيذ الدالة الخارجية وانتهائها والوصول للمتغير b نستطيع أن نتحكم في b بالرغم من انتهاء الدالة الخارجية function outer() { const a = 10; let b = 100; function inner() { let c = 20; console.log(`a=${a}, b=${b}, c=${c}`); b++; c++; } return inner; } const fnFirst = outer();//تم استدعاء الدالة الخارجية ونتيجة تم تخزينها في fnFirst const fnSecond = outer();// تم استدعاء الدالة الخارجية مرة أخري ونتيجة تم تخزينها في fnFirst fnFirst(); // نتيجة الاستدعاء لأول مرة a=10, b=100, c=20 fnFirst(); // نتيجة الاستدعاء لثانى مرة وزيادةb a=10, b=101, c=20 fnFirst(); // نتيجة الاستدعاء لثانى مرة وزيادةb a=10, b=102, c=20 fnSecond(); // نتيجة الاستدعاء لأول مرة a=10, b=100, c=20 نلاحظ أن في كل مرة يتم استدعاء fnFirst بعد المرة الأولي يتم زيادة b ولكن لايتم زيادة c لأنه يعاد تعريفه مرة أخري نلاحظ ايضا عند استدعاء fnSecond لأول مرة يطبع b=100 لأنه أيضا أخذ حق الوصول لb من الدالة الخارجية
  16. ما فهمته أنك تريد اضافة الكلمة بعد عملية الانتقال لصفحة المقال العشوائي بإمكانك اضافة الكلمة بطريقة نصية بعد الانتقال إلي الصفحة window.addEventListener("load", function () { if (!window.location.href.includes("?abdo")) { window.location.href += "?abdo"; } }); ويكون هذا الكود داخل صفحة المقال العشوائي سيتم إضافته بعد تحميل الصفحة ولكن إذا كنت تريد إضافته قبل عملية الإنتقال للصفحة ولابد أن يكون في الرابط لكى تتم عملية تحميل المقال بإمكانك اضافة الكلمة بالدالة `replace` كما أشار أخى ياسر أو استخدام الطريقة النصية بالطريقة النصية قبل عملية الإنتقال للصفحة تكون كالأتى function showLucky(e) { var t = e.feed; var n = t.entry || []; var r = t.entry[0]; for (var i = 0; i < r.link.length; ++i) { if (r.link[i].rel == "alternate") { var href = r.link[i].href; href += "?abdo"; window.location.href = href; } } } }
  17. يوجد العديد من المواقع تسمح لنا بانشاء مواقع بدون كتابة أكواد مثل ووردبريس أو ويكس أو wappler مميزاتها : 1 - بانشاء الموقع بسرعة بدون كتابة الاكود فقط سحب وافلات. 2 - تدعم الكثير من القوالب الجاهزة وتختار منها كما تريد سواء مدفوعة أو مجانية. 3 - تدعم الكثير من الإضافات التى تجعلك تزيد من امكانيات ومميزات الموقع. 4 -الوردبريس مثلا جيد جدا في تحقيق ترتيب مرتفع بمحركات البحث. 5 -توفير الوقت فى انشاء الموقع والمال لتوفير العديد من المبرمجين. سلبياتها: 1 - بطئ الموقع فى بعض من الأحيان بسبب الاضافات التى تم تثبيتها لإضافة بعض المميزات لموقعك. 2 - التعديل ليس سهلا فأنت محدود بالقالب الجاهز والإضافة التى تستخدمها. 3 - الكود الذي يتم انتاجه بهذه الأدوات أحيانا يكون زائد بكثير مما نستخدمه يؤدى إلى انخفاض أداء الموقع بدون داعي. فى كل الأحوال هذه المواقع قد تكون مناسبة للمواقع الصغيرة والمتوسطة ذات التكلفة المنخفضة لانتاج مشروع بجودة متوسطة ولا يتم التعديل عليه كثيرا في المستقبل.
  18. المصادر المجانية لإطار العمل flask باللغة العربية المجانية تعتبر قليلة ولكن عليك بالبحث عن (اطار العمل flask) ستجد بعض الفديوهات المجانية التى تعتبر كمدخل جيد لهذا الإطار لمعرفة خصائصه ومكوناته وفيما سيفيدك للمزيد اطلع على هذا المقال
  19. بالطبع تستطيع أن تصبح مطور واجهة خلفية فقط أو Fullstack ولكن إذا قررت أن تصبح مطور Fullsatck عليك في بداية الأمر أن تتخصص في الباك اند مثلا وتنجز مشاريع كثيرة ذات جودة عالية لكى تصبح لديك خبرة جيدة فيه ثم الإنتقال الى الواجهة الأمامية لتصبح مطور Fullstack لكن لا تنتقل من مطور واجهة خلفية إلى مطور واجهة أمامية ولديك بعض الخبرات البسيطة من المشاريع هذا سوف يؤدي الى تشتيتك. ولكن من وجهة نظري تخصص في شئ واحد فقط واحترفه وطبق عليه مشاريع كثيرة هذا سوف يؤدي الى تراكم الخبرات لديك وتجد عمل بسهولة ولا يضر إن عرفت بعض أساسيات مطور الواجهة أمامية فهذا يؤدي إلى تواصل جيد بينك وبين مطوري الواجهة الأمامية.
  20. العمل الحر: هو عبارة عن نوع معين من العمل حيث لا يقوم فيه العامل المستقل بالالتزام طويل الأجل مع جهة عمل بعينها مثل الموظف التقليدي، بل يقوم بالعمل على مشروعات مختلفة مع جهات مختلفة، والعائد المادي فيه يكون محسوباً بالساعة، أو كمبلغ ثابت مقابل اتمام مهمة معينة. قائمة مختصرة بأهم وأشهر المجالات في سوق العمل الحر: البرمجة: وهو المجال المرتبط بتطوير مواقع الويب وتطبيقات الهواتف الذكية، وبرامج الكمبيوتر…الخ. الكتابة: وهو المجال المرتبط بكل ما له علاقة بعالم الكتابة بكل أنواعه وتخصصاته. الترجمة: من وإلى كل اللغات. تصميم الجرافيك: كل ما هو مرتبط بمزج الألوان مع الخطوط للخروج بتصميم مرئي. المونتاج: كل ما هو مرتبط بتصميم وتعديل الفيديوهات. التعليق الصوتي: مجال مرتبط بعالم الفيديوهات. التصوير: بكل أنواعه سواء التصوير الفوتوغرافي أو الفيديو. التسويق: بكل أنواعه وتخصصاته، وخصوصاً التسويق الرقمي. لكى تعمل فى مجال من المجالات السابقة :- يجب أن تمتلك المهارات اللازمة لدخول هذا المجال ولديك معرض أعمال قوى يحتوى على المشاريع التى انجزتها لكى يراها العميل حتى تبدأ وتقدم على أى عمل. وعليك بعد ذلك الدخول إلى أحد المنصات (المواقع) التى تجمعك بالعميل وتقدم له الخدمة مثل {مستقل- خمسات} وغيرها كل موقع يتم العمل فيها بطريقة مختلفة :- 1- مستقل: العميل يعلن المشروع وأنت تختار المشروع الذى يناسبك وتقدم عرضك ثم العميل يختار من بين العروض المناسبة له. 2- خمسات: أنت تعلن الخدمة التى تقدمها والعميل عليه الاختيار ويشتري الخدمة ثم تبدأ انت بإنجازها له. عليك اتمام المشروع والخدمة على أكمل وجه لأنه يوجد تقييمات لك بعد كل مشروع تنجزه فاحرص عليه لأنه مهم جدا لكى يتم اختيارك من قبل عملاء أخرين بعد ذلك. للمزيد اطلع على هذه المقالات والإجابات
  21. فقط طريقة مبسط للكتابة في حالة عبارة مفردة بسيطة مثل function x(m, y, ...me) { let total = 0; for (let go of me) total += m + y + go; return total; } لكن فى حالة أكثر من عبارة ويوجد عمليات معقدة داخل جسم الحلقة لابد من وضعها ال{} لأنه لو تم وضع اكتر من جملة بدون {} لا تعتبر الا العبارة الأولى تبع جسم الحلقة function x(m, y, ...me) { let total = 0; for (let go of me) { total += m + y; total += go; } return total; }
  22. دي نصيحة الdocs بتاعت الredux تجنب وضع قيم غير قابلة للتسلسل مثل الوعود أو الرموز أو الخرائط/المجموعات أو الوظائف أو مثيلات الفئة في حالة متجر Redux أو الإجراءات المرسلة. وهذا يضمن أن الإمكانات مثل تصحيح الأخطاء عبر Redux DevTools ستعمل كما هو متوقع. كما يضمن أيضًا تحديث واجهة المستخدم كما هو متوقع بس في حالة إنك عايز تعملى تعطيل إن ويتم وضع قيم غير قابلة التسلسل بإمكان استخدام هذه البوابة configureStore({ middleware: (getDefaultMiddleware) => getDefaultMiddleware({ serializableCheck: { // قم بتجاهل أنواع الإجراءات هنا ignoredActions: ['your/action/type'], // قم بتجاهل المسارات في جميع الإجراءات هنا ignoredActionPaths: ['meta.arg', 'payload.timestamp'], // قم بتجاهل هذه المسارات في الحالة ignoredPaths: ['items.dates'], }, }), })
  23. بالاضافة لتعليقات الأصدقاء ال higher order function هى الfunction التى تأخذ function أخري أو أكثر كمعاملات لها أو ترجع function function greaterThan(n) { return m => m > n; } let greaterThan10 = greaterThan(10); console.log(greaterThan10(11)); // → true ويوجد functions في الجافسكربت هى higher order function جاهزة لحل مشكلات متكررة مثل ال 1 - ()map // جمع 10 على كل عنصر فى المصفوفة const arr = [1, 2, 3, 4, 5]; const output = arr.map((num) => num += 10) console.log(arr); // [1, 2, 3, 4, 5] console.log(output); // [11, 12, 13, 14, 15] 2 - ()filter const users = [ {firstName: 'John', lastName: 'Doe', age: 25}, {firstName: 'Jane', lastName: 'Doe', age: 30}, {firstName: 'Jack', lastName: 'Doe', age: 35}, {firstName: 'Jill', lastName: 'Doe', age: 40}, {firstName: 'Joe', lastName: 'Doe', age: 45}, ] // ايجاد المستخدمين أعمارهم فوق 30 const output = users.filter(({age}) => age > 30) console.log(output); // [{firstName: 'Jack', lastName: 'Doe', age: 35}, {firstName: 'Jill', lastName: 'Doe', age: 40}, {firstName: 'Joe', lastName: 'Doe', age: 45}]
×
×
  • أضف...