Files
30-seconds-of-code/snippets/js/s/closest-numeric-match.md
Angelos Chalaris 9d032ce05e Rename js snippets
2023-05-19 20:23:47 +03:00

24 lines
548 B
Markdown

---
title: Closest numeric match
type: snippet
language: javascript
tags: [math]
author: chalarangelo
cover: green-cabin-cow
dateModified: 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
```