JS как язык не имеет инструментов, которые могут помочь вам напрямую.
Вы можете довольно легко реализовать линейную или полиномиальную интерполяцию.Многочлен (скажем, степени 3), вероятно, даст немного более хорошие числа в середине, хотя конечные точки могут быть проблематичными - зависит от данных.
Линейная интерполяция проще, хотя в целом я бы предположил, что это не такдать такую же точную оценку, как и полиномиальную интерполяцию более высокой степени.
Альтернативой могут быть сплайны (кубические относительно простые), которые будут более чем достаточно точными для ваших целей.Это может быть небольшим перебором, хотя может и не быть - не уверен, что объем этого требования.
Вы могли бы рассмотреть возможность сделать это на стороне сервера и использовать одну из многих библиотек для других языков, которые реализуют эти интерполяционные функции.Это дало бы вам действительно точный и общий способ эффективного решения проблемы без необходимости ее самостоятельной реализации.
Трудно сказать, так как степень точности, диапазон данных и масштаб проекта имеют значениекакой тип интерполяции вам нужен, если это можно сделать на стороне сервера / клиента и т. д.