Files
30-seconds-of-code/snippets/closest.md
Angelos Chalaris 8a6b73bd0c Update covers
2023-02-16 22:24:28 +02:00

22 lines
507 B
Markdown

---
title: Closest numeric match
tags: math,array
author: chalarangelo
cover: sparkles
firstSeen: 2022-03-30T05:00:00-04:00
---
Finds the closest number from an array.
- Use `Array.prototype.reduce()` to scan all elements of the array.
- Use `Math.abs()` to compare each element's distance from the target value, storing the closest match.
```js
const closest = (arr, n) =>
arr.reduce((acc, num) => (Math.abs(num - n) < Math.abs(acc - n) ? num : acc));
```
```js
closest([6, 1, 3, 7, 9], 5); // 6
```