JavaScript : ما الافضل للتكرار For أو Object.keys وما هي الأسرع في تحميل البيانات وأين يكمن الاختلاف؟

Infinyteam

السلام عليكم،

المرجوا المساعدة بالجواب عن سؤالي حول الجافاسكريبت:

ماهي افضل دالة للتكرار هل عبر استعمال For او Object.keys وماهي الاسرع وأين يكمن الاختلاف، بحث ولم اجد ما يشفي غليلي :/

المثال الأول : For Loop

for (var i=0; i<data.entry.length; i++) {
    var thumbnail = data.entry[i].media.url,
        title = data.entry[i].title,
        summary = data.entry[i].summary,
        author = data.entry[i].author[0].name,
        comments = data.entry[i].thr;
};

المثال الثاني : Object.keys

Object.keys(data.entry).forEach(function(i){
    var thumbnail = data.entry[i].media.url,
        title = data.entry[i].title,
        summary = data.entry[i].summary,
        author = data.entry[i].author[0].name,
        comments = data.entry[i].thr;
});

غالبا ما كنت استعمال ال For Loop ومؤخرا وضعت شرحا حوال ال JSON FEED API لكن هنالك شخص رأى الشرح ونصحني باستعمال Object.keys لانها اسرع بدل ال For، وفعلا جربتها لكن لم الاحظ اي اختلاف في السرعة وبحث حول الامر ولم اجد ما الفرق بينهما بالضبط فهل هنالك من يمكنه المساعدة؟


التعليق السابق

لا داعي لـ

typeof x === "undefined"

يمكنك كتابة:

x === undefined

وستحصل على نفس النتيجة

أحب استخدام typeof دائمًا حتى أعتاد عليها؛ الطريقة الثانية سترجع خطأ في الوضع الصارم إذا كان متغير غير معرف -في الحالة السابقة لا فرق- لكن في شيفرتك لن تعمل، أبدًا؛ ستحصل على شيء مثل "Uncaught ReferenceError: x is not defined" إذا لم يكن x معرفًا.

يسرني التعرف عليك اخ يوسف من خلال اجوبتك تبدو متكمنا جدا وخير دليل اخر عمل لك الا وهو ملهم بالتوفيق لكم في هذا المشروع الجميل :)