Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

หาค่าที่ใกล้ที่สุดในอาร์เรย์ใน JavaScript

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

ตัวอย่าง

โค้ดสำหรับนี้:

const arr = [3, 56, 56, 23, 7, 76, -2, 345, 45, 76, 3]; const num = 37 const findClosest = (arr, num) => { const creds = arr.reduce((acc, val, ind) => { let { diff, index } = acc; const difference = Math.abs(val - num); if(difference < diff){ diff = difference; index = ind; }; return { diff, index }; }, { diff: Infinity, index: -1 }); return arr[creds.index]; }; console.log(findClosest(arr, num));

ผลลัพธ์

ผลลัพธ์ในคอนโซล:

45