Ближайшее числовое совпадение

JavaScriptJavaScriptBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы изучим, как найти ближайшее число из массива с использованием JavaScript. Мы будем использовать метод Array.prototype.reduce() и функцию Math.abs() для сравнения расстояния между каждым элементом массива и целевым значением, возвращая ближайшее совпадение. В конце этого практического занятия вы будете лучше понимать, как реализовать эту полезную функцию в своих проектах на JavaScript.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") subgraph Lab Skills javascript/variables -.-> lab-28198{{"Ближайшее числовое совпадение"}} javascript/arith_ops -.-> lab-28198{{"Ближайшее числовое совпадение"}} javascript/comp_ops -.-> lab-28198{{"Ближайшее числовое совпадение"}} javascript/higher_funcs -.-> lab-28198{{"Ближайшее числовое совпадение"}} end

Функция для нахождения ближайшего числового совпадения в массиве

Для нахождения ближайшего числа в массиве используйте следующую функцию:

const closest = (arr, n) =>
  arr.reduce((acc, num) => (Math.abs(num - n) < Math.abs(acc - n) ? num : acc));

Вот, как ее использовать:

  1. Откройте Терминал/SSH.
  2. Введите node.
  3. Используйте функцию closest() и укажите массив и целевое значение в качестве аргументов.

Пример использования: closest([6, 1, 3, 7, 9], 5) вернет 6, что является ближайшим числом к 5 в массиве.

Резюме

Поздравляем! Вы завершили практическое занятие по нахождению ближайшего числового совпадения. Вы можете выполнить больше практических занятий в LabEx, чтобы улучшить свои навыки.