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

السؤال

Recommended Posts

  • 0
نشر

الأمر بسيط، التابع splice يقوم باقتطاع مصفوفة فرعية من مصفوفة رئيسية نقوم بتحديد بدايتها وطولها. 

مثال: 

var myVar = ['Apple', 'Orange', 'Banane']

نريد اقتطاع مصفوفة من هاته المصفوفة، تبدأ من Apple وطولها 2، نقوم بذلك على النحو التالي: 

var myVar = ['Apple', 'Orange', 'Banane']

var result = myVar.splice(0, 2)

console.log(result)

الناتج: 

["Apple", "Orange"]

توثيق التابع splice حسب ويكي حسوب

  • 0
نشر

بالطبع تعلم أن splice هي دالة مدمجة في جافاسكريبت وتسمح لك بإضافة، إزالة أو استبدال العناصر من مجموعة أو مصفوفة.

وتستقبل المعلمات التالية:

splice(start, deleteCount, item1)
  • start: فهرس العنصر الذي تريد البدء من إزالته أو استبداله أو إضافته.
  • deleteCount: عدد العناصر التي تريد إزالتها.
  • item1, item2, ...: العناصر التي تريد إضافتها (اختياري).

وتستطيع استخدام قيمة سالبة لـ index للبدء من نهاية المصفوفة أي -1

ولفهم الأمر، لننظر إلى مثال عملي لإضافة عنصر:

const fruits = ["apple", "banana", "orange"];

fruits.splice(1, 0, "kiwi"); // يضيف "kiwi" بعد "banana"

console.log(fruits); // ["apple", "kiwi", "banana", "orange"]

وتستطيع أيضًا إضافة عنصرين:

const fruits = ["apple", "banana", "orange"];

fruits.splice(2, 0, "kiwi", "grape"); // يضيف "kiwi" و "grape" بعد "orange"

console.log(fruits); // ["apple", "banana", "kiwi", "grape", "orange"]

ولإزالة عنصر:

const fruits = ["apple", "banana", "orange"];

fruits.splice(2, 1); // يزيل "orange"

console.log(fruits); // ["apple", "banana"]

بنفس المنطق نستطيع إزالة عنصرين:

const fruits = ["apple", "banana", "orange", "kiwi", "grape"];

fruits.splice(2, 2); // يزيل "orange" و "kiwi"

console.log(fruits); // ["apple", "banana", "grape"]

استبدال عنصر:

const fruits = ["apple", "banana", "orange"];

fruits.splice(1, 1, "mango"); // يستبدل "banana" بـ "mango"

console.log(fruits); // ["apple", "mango", "orange"]

ولمعلوماتك تستطيع إزالة جميع العناصر من المصفوفة بكتابة أول معلمة بقيمة 0 أي بداية المصفوفة ثم وضع القيمة الثانية بطول المصفوفة:

const fruits = ["apple", "banana", "orange"];

fruits.splice(0, fruits.length); // يزيل جميع العناصر

console.log(fruits); // []

 

  • 0
نشر (معدل)

دالة splice في الجافا سكريبت هي دالة built in  تسمح لك بالتعديل على ال array (إضافة او حذف عناصر) 
والشكل البدائي لها يكون كالتالي : 
 

let array = [1, 2, 3, 4, 5];
array.splice(2, 2); 
console.log(array); // Output: [1, 2, 5]

اول عامل يحدد الindex الذي نبدأ منه التعديل .. والثاني يحدد عدد العناصر .. هنا حذفنا عنصرين بدءاً من ال index رقم 2
يمكنك ايضا اضافة عناصر عند index معين كالتالي :-

let array = [1, 2, 3, 4, 5];
array.splice(2, 0, 6, 7); 
console.log(array); // Output: [1, 2, 6, 7, 3, 4, 5]

هنا حددنا ان عدد العناصر المحذوفة صفر وان العنصرين 6 و7 سيضافو عند ال  index رقم 2
ويمكنك أيضاً استبدال العناصر بعناصر اخرى كالتالي : 
 

let array = [1, 2, 3, 4, 5];
array.splice(2, 2, 6, 7);
console.log(array); // Output: [1, 2, 6, 7, 5]

واعلم ان هذه الدالة تعدل على ال array الأصلي في مكانه. 

تم التعديل في بواسطة Hossam Mohamed15
  • 0
نشر

دالة التابع أو splice في جافاسكريبت تستخدم لتعديل محتوى المصفوفة عن طريق إضافة، إزالة أو استبدال العناصر في مواقع محددة هذا هو شكلها:

array.splice(start, deleteCount, item1, item2, ...);

حيث أن:

  • - `start`: يمثل المؤشر الذي يحدد موضع بداية التعديل.
  • - `deleteCount`: يشير إلى عدد العناصر التي يجب حذفها ابتداء من الموضع المحدد فمثلا إذا تركنا القيمة فارغة، فلن يتم حذف أي عنصر.
  • - `item1`, `item2`, ...: تمثل العناصر التي يجب إضافتها في الموضع المحدد.

وكملحوظة فقط فإن دالة splice تعمل على المصفوفة الأصلية وتقوم بتعديلها مباشرة، بمعنى أنها لا تنشئ مصفوفة جديدة.

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

هذا هو شرح بسيط لكيفية عمل التابع:

مثلا يمكن استخدامه لاستخراج جزء من المصفوفة من دون تعديل المصفوفة الأصلية. على سبيل المثال:

let array = [1, 2, 3, 4, 5];
let extracted = array.splice(2, 2);
console.log(extracted); // Output: [3, 4]
console.log(array); // Output: [1, 2, 5]

ففي هذا المثال، تم استخراج العناصر 3 و 4 من المصفوفة الأصلية.

وتستخدم أيضا لإعادة ترتيب العناصر بهذا الشكل:

let array = [3, 1, 4, 2, 5];
array.splice(0, array.length, ...array.sort());
console.log(array); // Output: [1, 2, 3, 4, 5]

هنا تم فرز العناصر في المصفوفة وتم إعادة تعيينها باستخدام splice مما أدى إلى إعادة ترتيبها.

يمكن أيضا تحويل المصفوفة إلى سلسلة نصية عن طريق حذف العناصر وإضافة عناصر جديدة. على سبيل المثال:

let array = [1, 2, 3];
array.splice(0, array.length, array.join(', '));
console.log(array); // Output: ["1, 2, 3"]

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

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...