"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > NodeList to Array: هل `Array.from()` هو الأسرع حقًا؟

NodeList to Array: هل `Array.from()` هو الأسرع حقًا؟

تم النشر بتاريخ 2024-11-08
تصفح:429

 NodeList to Array: Is `Array.from()` Really the Fastest?

التحويل من NodeList إلى Array: الكشف عن النهج الأسرع

اقترحت المناقشات السابقة استخدام Array.prototype.slice.call(nl) توفر الطريقة التحويل الأكثر كفاءة من NodeList إلى Array. ومع ذلك، كشفت المعايير الأخيرة عن واقع مختلف إلى حد مذهل. خلافًا للاعتقاد الشائع، فإن النهج التقليدي للحلقة، for(var i = 0, n; n = nl[i]; i) arr.push(n);, يفوق الطريقة المذكورة أعلاه بهامش ثلاثة أضعاف ملحوظ.

هذا الاكتشاف المحير يثير الفضول: هل هذه مجرد غرابة في Chromium 6، أم أن هناك نهجًا أسرع مخفيًا؟ لحسن الحظ، مع ظهور ES6، يتوفر لدينا حل يتفوق بسهولة على كلتا الطريقتين المقترحتين مسبقًا.

Array.from(): الحل النهائي

الحل النهائي توفر وظيفة Array.from()، المقدمة في ES6، وسيلة مختصرة وسريعة للغاية لتحويل NodeList إلى Array. بناء الجملة واضح ومباشر:

// nl is a NodeList
let myArray = Array.from(nl)

يُنجز هذا السطر الوحيد من التعليمات البرمجية عملية التحويل بكفاءة لا مثيل لها، متفوقًا على سابقاتها بهامش كبير. وبالتالي، فإن البحث عن أسرع طريقة تحويل يبلغ ذروته في عهد Array.from()، مما يوفر للمطورين حلاً لا مثيل له لهذه المهمة الأساسية.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3