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

سؤال بخصوص findIndex في جافاسكريبت

Youness Bait

السؤال

Recommended Posts

  • 0

item هنا تعبر عن كل عنصر في المصفوفة numbers،

حيث أن findIndex تقوم بعمل حلقة تمر على كل العناصر وفي كل مرة تتحقق من الشرط item > 70 وفي حال وجدت هذا الشرط محققاً في عنصر معين فإنها تقوم بإعادة الـ index الخاصة به.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

في هذا الكود، يتم استخدام دالة `findIndex()` التي تقوم بالبحث في مصفوفة `numbers` عن العنصر الأول الذي يفوق القيمة `70`. ثم يتم طباعة الفهرس (index) لهذا العنصر.

في الدالة الخاصة بـ `findIndex()`، يتم استخدام معامل واحد وهو `item`والذي يعبر عن كل عنصر في المصفوفة `numbers` على التوالي. يتم تحليل المعامل `item` في الدالة باستخدام الدالة السهمية (arrow function) التي تحدد شرط بحث الدالة، وهو `item > 70`، والتي تقوم بإرجاع `true` إذا كان العنصر الحالي في المصفوفة يفوق القيمة `70`. وتمرر هذه الدالة السهمية إلى دالة `findIndex()` لتنفيذ البحث.

مثال بسيط:
العثور على أول عنصر أكبر من 5

let numbers = [1, 5, 8, 9];

let index = numbers.findIndex(function(num) {
  return num > 5; 
});

console.log(index); // 1

نفس المثال ولكن باستخدام أسهم الوظيفة اختصارا:

let index = numbers.findIndex(num => num > 5);

ملاحظة: إذا لم يتم العثور على أي عنصر يلبي المعايير ، فسيعيد findIndex() -1.

ويمكنك الإطلاع على المزيد من المعلومات من خلال هذا الرابط

تم التعديل في بواسطة عبدالباسط ابراهيم
تعديل الكود
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

دالة findIndex في جافاسكريبت تُستخدم للبحث عن عنصر محدد ضمن مصفوفة (Array) وإرجاع الفهرس (index) الأول الذي يطابق الشرط المحدد، وإذا لم يتم العثور على عنصر يطابق الشرط، فإن الدالة تعيد قيمة -1 أي false.

والكود item => item > 70 هو دالة سهمية (arrow function) يتم استخدامها كشرط في findIndex، وذلك الشرط يحدد أن الدالة تبحث عن عنصر في المصفوفة numbers الذي يكون قيمته أكبر من 70.

فأنت استخدمت findIndex للعثور على أول عنصر في المصفوفة numbers الذي يكون قيمته أكبر من 70، وإذا تم العثور على عنصر مطابق، فإن الدالة findIndex ستعيد الفهرس (index) لهذا العنصر، وسيتم تخزينه في المتغير index. إذا لم يتم العثور على عنصر يطابق الشرط، فسيتم تعيين قيمة -1 للمتغير index.

أي أن item تمثل كل عنصر في المصفوفة في كل حلقة تكرار.

وهناك معاملات أخرى غير item في دالة callback  في findIndex ، وللتوضيح انظر الكود التالي:

const numbers = [10, 20, 30, 40, 50];

const index = numbers.findIndex((element, index, array) => {
  console.log(`Element: ${element}`);
  console.log(`Index: ${index}`);
  console.log(`Array: ${array}`);
  console.log('-------------------');

  return element > 30;
});

console.log(`Index of first element greater than 30: ${index}`);
  • element: يمثل العنصر الحالي الذي يتم معالجته في المصفوفة أثناء تنفيذ findIndex().
  • index: يمثل الفهرس (index) للعنصر الحالي في المصفوفة أثناء تنفيذ findIndex().
  • array: يمثل المصفوفة التي تم استدعاء findIndex() عليها.

شرح findIndex()‎ من موسوعة حسوب

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

numbers هو مصفوفة (Array) تحتوي على مجموعة من الأرقام.

findIndex هو أسلوب (Method) مدمج في JavaScript يُستخدم للبحث عن عنصر في المصفوفة وإرجاع مؤشر الموضع الأول للعنصر المطابق وفقًا للشرط المحدد.

item هو المعامل (Parameter) الذي يُمثل كل عنصر في المصفوفة بينما يتم تمريره إلى دالة الاستدعاء المجهولة (Anonymous Function) المستخدمة في الـ Arrow Function.

=> هو عبارة عن إشارة إلى Arrow Function، وهي طريقة مختصرة لكتابة واستخدام الدوال المجهولة في JavaScript.

item > 70 هو الشرط المحدد للبحث عن العنصر الذي يكون قيمته أكبر من 70.

عند تنفيذ الكود، findIndex سيقوم بتنفيذ الدالة المجهولة على كل عنصر في المصفوفة numbers. ستتم مقارنة قيمة كل عنصر مع الشرط item > 70. عندما يتم العثور على عنصر يفي بالشرط، سيتم إرجاع المؤشر الأول لموضع العنصر في المصفوفة.

قيمة المؤشر ستُخزن في المتغير index. ثم يتم طباعة قيمة المتغير index باستخدام console.log. إذا لم يتم العثور على عنصر يفي بالشرط، فسيتم إرجاع -1 كقيمة المؤشر.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

دالة findIndex في جافا سكربت هذه الدالة تستخدم للبحث عن عنصر محدد داخل مصفوفة وإرجاع مكانه في المصفوفة. 

لنفترض أن لدينا مصفوفة تحتوي على أرقام من 1 إلى 5:

const numbers = [1, 2, 3, 4, 5];

إذا كنت تريد البحث عن الرقم 3 ، فيمكنك استخدام دالة findIndex للعثور عليه وإرجاع مكانه في المصفوفة:

const index = numbers.findIndex((num) => num === 3);

سترجع هذه الدالة القيمة 2 ، لأن الرقم 3 موجود في الموضع الثالث في المصفوفة (يتم العد من 0).

 الـnum هنا يعني رقمًا، وهو يستخدم للإشارة إلى الأرقام في القائمة (numbers).

الـfindIndex هنا تستخدم للبحث عن مكان (أو الفهرس) في القائمة (numbers) من خلال تنفيذ الشرط الذي في الدلة المجهولة علي كل عنصر القائمة.

في هذه الحالة  الـnum هنا يعني رقمًا من أرقام القائمة وإذا قامت دالة المجهولة:

(num) => num === 3

بإرجاع القيمة True هذا يعني إذا هذا الرقم يحقق الشرط بعدها سوف تقوم الدالة بإرجاع index هذا الرقم.

هناك بعض الدوال التي يمكن استخدامها بدلاً من findIndex ، مثل:

  1. indexOf: ترجع مكان القيمة المحددة في المصفوفة. ومع ذلك ، يجب أن يكون العنصر موجودًا في المصفوفة لكي تعمل بشكل صحيح.
  2. includes: ترجع قيمة منطقية (true / false) تشير إلى ما إذا كانت المصفوفة تحتوي على القيمة المحددة أم لا.

هذا مثال يستخدم كل الدوال التي يمكن استخدامها بدلاً من findIndex.

لنفترض أن لدينا مصفوفة تحتوي على أسماء مدينة:

const cities = ["Paris", "New York", "Tokyo", "London"];

نريد العثور على مكان مدينة Tokyo في المصفوفة. يمكن استخدام كل من الدوال التالية للقيام بذلك:

1. indexOf: 

const index1 = cities.indexOf("Tokyo");

2. findIndex:

const index2 = cities.findIndex(city => city === "Tokyo");

3. includes:

const tokyoIndex = cities.includes("Tokyo") ? cities.indexOf("Tokyo") : -1;

سترجع كل من هذه الدوال القيمة 2 ، لأن "Tokyo" موجود في الموضع الثالث في المصفوفة (يتم العد من 0).

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...