ใน Lodash, โมดูล “Util” ไม่มีอย่างเป็นที่เด่นเหมือนโมดูลอื่น ๆ ที่เกี่ยวข้องกับการจัดการข้อมูลแบบพื้นฐานเช่น Array หรือ Object แต่มีฟังก์ชันที่เกี่ยวข้องกับการทำงานแบบอุตสาหกรรมหรือการใช้งานทั่วไป นี่คือฟังก์ชันบางส่วนที่เกี่ยวข้องกับ Util ใน Lodash:
_.debounce(func, [wait=0], [options={}]): ใช้สำหรับสร้างฟังก์ชันใหม่ที่ทำการเรียก func หลังจากผ่านไปเวลา wait (มิลลิวินาที) โดยตัว debounce จะรอการเรียก func จนกว่าจะไม่มีการเรียกเพิ่มเติมเกิดขึ้น ใช้สำหรับการควบคุมการเรียกฟังก์ชันในกรณีที่การเรียกมีความถี่สูง.
1
const debouncedFunc = _.debounce(searchFunction, 300); // รอ 300 มิลลิวินาที
_.throttle(func, [wait=0], [options={}]): ใช้สำหรับสร้างฟังก์ชันใหม่ที่ทำการเรียก func อย่างสม่ำเสมอทุก wait (มิลลิวินาที) โดยจะไม่รอการเรียกถัดไปหาก func ยังไม่เสร็จสมบูรณ์ ใช้สำหรับการควบคุมการเรียกฟังก์ชันในกรณีที่การเรียกมีความถี่สูง.
1
const throttledFunc = _.throttle(scrollEventHandler, 500); // รอ 500 มิลลิวินาที
_.memoize(func, [resolver]): ใช้สำหรับสร้างฟังก์ชันที่เก็บค่าผลลัพธ์ของ func ลงในแคชเพื่อลดการเรียก func ใหม่ในกรณีที่มีการเรียกซ้ำกันด้วยอาร์กิวเมนต์เดิม สามารถกำหนด resolver เพื่อกำหนดวิธีในการแปลงอาร์กิวเมนต์ให้อยู่ในรูปแบบที่ใช้ในการเรียก func.
1
const memoizedFunction = _.memoize(fetchData);
_.once(func): ใช้สำหรับสร้างฟังก์ชันใหม่ที่จะเรียก func อย่างสม่ำเสมอครั้งเดียวเท่านั้น และจะไม่สามารถเรียกฟังก์ชันนี้อีกครั้งหลังจากเรียกแล้ว.
1
const runOnce = _.once(initSetup);
_.random([lower=0], [upper=1], [floating]): ใช้สำหรับสร้างตัวเลขสุ่มในช่วงระหว่าง lower และ upper โดยถ้าตั้งค่า floating เป็น true จะสร้างตัวเลขทศนิยม.
1
2const randomInt = _.random(1, 10); // ตัวเลขจำนวนเต็มสุ่มในช่วง 1-10
const randomFloat = _.random(0, 1, true); // ตัวเลขทศนิยมสุ่มในช่วง 0-1_.uniqueId([prefix=’’]): ใช้สำหรับสร้างรหัสที่ไม่ซ้ำกันขึ้นมาใหม่ทุกครั้ง โดยสามารถกำหนด prefix เพื่อเพิ่มข้อความหน้าหรือรองรับเขต
ข้อมูลเฉพาะ.
1 | const uniqueId = _.uniqueId('user_'); // เช่น 'user_1', 'user_2', 'user_3', ... |
เหล่าฟังก์ชันที่เกี่ยวข้องกับ Util ใน Lodash ช่วยในการจัดการการจับเวลาการเรียกฟังก์ชัน (debounce และ throttle) การเก็บข้อมูลเวลาการเรียกฟังก์ชัน (memoize) และการจัดการการเรียกฟังก์ชันครั้งเดียว (once) ซึ่งเป็นสิ่งสำคัญในการพัฒนาแอปพลิเคชัน JavaScript ที่มีประสิทธิภาพและการตอบสนองอย่างเหมาะสม.