ویرگول
ورودثبت نام
پویا ابراهیمی
پویا ابراهیمی
خواندن ۱ دقیقه·۳ سال پیش

بررسی سرعت پیمایش آرایه با متد های مختلف

برای راحتی کار خود شروع به نوشتن چند متد ساده می کنیم

function getNowTime(){ return Date.now() } function calculateRunTime (callBack){ var startTime = getNowTime(); callBack(); return getNowTime() - startTime; }

ابتدا با استفاده از کتابخانه math ارایه ای به تعداد ۱ میلیون خانه از اعداد رندوم ایجاد میکنیم .

var randomNumbers = []; for(var i = 0; i< 10000000; i++){ randomNumbers.push(Math.random()*1000); }

بعد از ایجاد ارایه با متد های مختلف شروع به پیمایش آرایه میکنیم .

روش اول با استفاده از حلقه ساده for:

function forMethod(){ var forNumbers = []; for(var i = 0; i< randomNumbers.length; i++){ forNumbers.push(randomNumbers[i]); } return forNumbers; } console.log('simple for: ', calculateRunTime( forMethod) )

روش دوم با استفاده از تابع map:

function mapMethod (){ var mapNumbers = []; var cloneRandomNumbers = randomNumbers.map((randomNumber)=>{ mapNumbers.push(randomNumber); }) return mapNumbers; } console.log('standard map: ', calculateRunTime( mapMethod) )

روش سوم با استفاده از تابع foreach:

function forEachMethod (){ var forEachNumbers = randomNumbers.forEach((randomNumber)=>{ return randomNumber; }) return forEachNumbers; } console.log('foreach: ', calculateRunTime( forEachMethod) )


arraytimemap or forIterationjavascript
شاید از این پست‌ها خوشتان بیاید