كيفية إزالة التكرارات من مصفوفة في JavaScript؟ أكثر الطرق فعالية
مرحباً بالجميع! أنا مبتدئ في JavaScript وواجهت هذه المهمة: لدي مصفوفة تحتوي على أرقام بها العديد من القيم المكررة. أحتاج إلى الاحتفاظ بالعناصر الفريدة فقط. على سبيل المثال، لدي مصفوفة `[1, 2, 2, 3, 4, 4, 5]` وأريد الحصول على `[1, 2, 3, 4, 5]`.
حاولت كتابة دالة خاصة بي، لكنها لا تعمل بشكل صحيح - فهي لا تزيل جميع التكرارات أو تفسد المصفوفة تماماً. إليك الكود الخاص بي:
```javascript
function removeDuplicates(arr) {
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] === arr[j]) {
arr.splice(j, 1);
}
}
}
return arr;
}
```
المشكلة هي أنه بعد `splice` تتغير المؤشرات (indices) وأفقد بعض العناصر. بالإضافة إلى ذلك، أعتقد أن هذا الحل بطيء جداً للمصفوفات الكبيرة.
أرجو إخباري، ما هي الطرق الحديثة والفعالة لإزالة التكرارات؟ أهتم بالحلول لكل من الأنواع البسيطة (الأرقام، السلاسل النصية).