Как вывести число в сокращенном формате?

Для вывода числа в сокращенном формате в JavaScript можно использовать функцию toLocaleString. Эта функция преобразует число в строку с разделителями (, для тысяч, точка для десятичной части), а также добавляет сокращенное представление числа с указанием единицы измерения.

Вот пример, показывающий как использовать toLocaleString для сокращенного формата числа:

let number = 1234567;

// Определение единицы измерения
let units = ['K', 'M', 'B', 'T'];

// Определение функции для форматирования числа в сокращенный формат
function formatNumber(number) {
  // Находим степень числа (например, 1000^0 = 1, 1000^1 = 1000 и т.д.)
  let exponent = Math.floor(Math.log10(number) / 3);

  // Делим число на степень единицы измерения
  let formattedNumber = (number / Math.pow(1000, exponent)).toLocaleString(undefined, { maximumFractionDigits: 2 });

  // Добавляем соответствующую единицу измерения
  formattedNumber += units[exponent - 1];

  return formattedNumber;
}

// Выводим число в сокращенном формате
console.log(formatNumber(number)); // Результат: "1.23M"

В этом примере мы определили массив units, содержащий сокращенные обозначения единиц измерения (тысячи, миллионы, миллиарды и триллионы). Затем мы создали функцию formatNumber, которая принимает число и возвращает его в сокращенном формате.

Внутри функции мы используем функцию Math.log10 для определения степени числа (какой степени числа 1000 соответствует данное число). Затем мы делим число на степень 1000 и применяем функцию toLocaleString для форматирования числа с разделителями и указанием максимального количества знаков после запятой.

Наконец, мы добавляем соответствующую единицу измерения к отформатированному числу и возвращаем его из функции.

В результате на консоль будет выведено сокращенное представление числа: "1.23M" (M означает миллионы).