Skip to main content
JavaScriptProgramming Language

LOOP แบบไหนเร็วกว่ากันนะ ?

เพื่อนๆ คงเคยเรียนพื้นฐานของการเขียนโปรแกรมกันมาแล้ว ซึ่งแทบจะเป็นไปไม่ได้เลยที่คนที่เคยเรียนพื้นฐานมาแล้วจะไม่รู้จัก Loop ซึ่ง Loop ก็สามารถเขียนได้มากมายหลายแบบ แล้วเพื่อนๆ เคยสงสัยกันไหมว่า Loop แบบไหนมันเร็วกว่ากัน วันนี้เรามาร่วมกันไขข้อสงสัยไปพร้อมๆ กันด้วยการเขียนโปรแกรมในภาษา JavaScript เพื่อหาคำตอบในบทความนี้เลยจ้า

ผู้เขียน Thapanon S.  (กีกี้หมายเลข 1) – BorntoDev Co., Ltd.

มาทำความรู้จัก Loop กันก่อนนะ

Loop คือควบคุมการทำงานของโปรแกรมแบบวนซ้ำตามเงื่อนไขบางอย่างที่ถูกกำหนดเอาไว้นั่นเอง

 

เริ่มกันเลยยย !!!!

โดยวันนี้เราจะมาทำการทดสอบ Loop กันหมด 3 แบบในภาษา JavaScript
ได้แก่ Loop for ,for-of และ forEach

 

ตัวอย่างโค้ด JS ของ loop for

const m = 1000000; 
const arr = Array(m); 
console.time('time')
for (let i = 0; i < mil; i++) { }
console.timeEnd('time');

 

ตัวอย่างโค้ด JS ของ loop for-of

const m = 1000000;
const arr = Array(m);
console.time('time')
for (const v of arr) {}
console.timeEnd('time');

 

ตัวอย่างโค้ด JS ของ loop forEach

const m = 1000000; 
const arr = Array(m); 
console.time('time')
arr.forEach(v => v)
console.timeEnd('time');

เมื่อเรานำตัวอย่าง code ด้านบนไปทำการ run code จะแสดงออกมาว่าตั้งแต่ก่อน loop ถึง loop เสร็จเราใช่เวลาไปกี่มิลลิวินาทีกัน และเราจะตัดสินโดย run code ทั้งหมด ชุดละ 3 รอบแล้วเอาเวลามาเฉลี่ยกัน

 

ต่อไปเรามาดูผลกันดีกว่า (ความเร็วขึ้นอยู่กับแต่ล่ะเครื่องที่ใช้ทดสอบด้วยน้า)

โดยผู้เข้าชิงคนแรกได้แก่
loop for ใช้เวลาโดยเฉลี่ยไป  1.91 ms

ตามมาติดๆ กับผู้เข้าชิงคนต่อไป
loop for-of ใช้เวลาไป  2.032 ms

และผู้เข้าชิงคนสุดท้ายของวันนี้
loop forEach ใช้เวลาไป  1.697 ms และเป็นผู้ชนะของวันนี้ไปครับบบบบ

 

สรุป

เป็นยังไงกันบ้างกับการวัดความเร็วของ Loop แต่ล่ะแบบใน JavaScript แต่การ Loop ในวันนี้เป็นการ Loop แค่แบบนั้บเลขซึ่งมันจะมีบาง Loop ที่ถูกสร้างมาเพื่อจุดประสงค์อื่นทำให้แพ้ไปในรอบนี้ แต่ทั้นนี้ทันนั้น Loop แต่ล่ะ Loop ก็มีข้อดีในตัวของมันเองเพื่อนๆ ก็ลองไปศึกษาเพิ่มเติมกันดูนะครับว่า Loop แบบไหนความใช้งานอย่างไร สำหนับวันนี้ขอม้าไป เอ้ยยย ลาไปก่อนสวัสดีครับบบบบ😊

หากคุณสนใจพัฒนา สตาร์ทอัพ แอปพลิเคชัน
และ เทคโนโลยีของตัวเอง ?

อย่ารอช้า ! เรียนรู้ทักษะด้านดิจิทัลเพื่ออัพเกรดความสามารถของคุณ
เริ่มตั้งแต่พื้นฐาน พร้อมปฏิบัติจริงในรูปแบบหลักสูตรออนไลน์วันนี้

kanthima.m

Author kanthima.m

More posts by kanthima.m

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่จำเป็น
    เปิดใช้งานตลอด

    ประเภทของคุกกี้มีความจำเป็นสำหรับการทำงานของเว็บไซต์ เพื่อให้คุณสามารถใช้ได้อย่างเป็นปกติ และเข้าชมเว็บไซต์ คุณไม่สามารถปิดการทำงานของคุกกี้นี้ในระบบเว็บไซต์ของเราได้
    รายละเอียดคุกกี้

  • คุกกี้สำหรับการติดตามทางการตลาด

    ประเภทของคุกกี้ที่มีความจำเป็นในการใช้งานเพื่อการวิเคราะห์ และ นำเสนอโปรโมชัน สินค้า รวมถึงหลักสูตรฟรี และ สิทธิพิเศษต่าง ๆ คุณสามารถเลือกปิดคุกกี้ประเภทนี้ได้โดยไม่ส่งผลต่อการทำงานหลัก เว้นแต่การนำเสนอโปรโมชันที่อาจไม่ตรงกับความต้องการ
    รายละเอียดคุกกี้

บันทึกการตั้งค่า