เรามีอาร์เรย์ของตัวเลขที่จัดเรียงแบบสุ่มอย่างแท้จริง งานของเราคือการเขียนฟังก์ชันที่รับอาร์เรย์ของ Numbers ดังกล่าวและคืนค่าส่วนต่างของจำนวนที่มากที่สุดและน้อยที่สุดที่มีอยู่ในอาร์เรย์นั้น แต่ไม่ต้องเรียงลำดับอาร์เรย์
ดังนั้น เรามาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −
เราจะใช้ฟังก์ชัน Array.prototype.reduce() เพื่อเลือกตัวเลขที่เล็กที่สุดและมากที่สุดจากอาร์เรย์และจะคืนค่าส่วนต่างในภายหลัง รหัสสำหรับฟังก์ชันนี้จะเป็น −
ตัวอย่าง
const arr = [23, 65, 67, 23, 2, 6, 87, 23, 45, 65, 3, 234, 3]; const findDifference = arr => { if(!arr.length){ return 0; } const creds = arr.reduce((acc, val) => { let { max, min } = acc; if(val > max){ max = val; }; if(val < min){ min = val; }; return { max, min }; }, { max: -Infinity, min: Infinity }); return creds.max - creds.min; }; console.log(findDifference(arr));
ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็น -
232