Существует ли нативный способ разделения чисел на разряды?
Intl.NumberFormat

const number = 123456.789;

new Intl.NumberFormat('ru-RU').format(number);
// "123 456,789" по умолчанию { style: 'decimal' }

Но..
new Intl.NumberFormat('ru-RU', { minimumFractionDigits: 6 })
  .format(123456.789012345);
// "123 456,789012" - после запятой не разделяет
https://developer.mozilla.org/en-US/docs/Web/JavaS...
// Demonstrate selected international locales
var locales = [
  undefined,  // Your own browser
  'en-US',    // United States
  'de-DE',    // Germany
  'ru-RU',    // Russia
  'hi-IN',    // India
  'de-CH',    // Switzerland
];
var n = 100000;
var opts = { minimumFractionDigits: 2 };
for (var i = 0; i < locales.length; i++) {
  console.log(locales[i], n.toLocaleString(locales[i], opts));
}

результат
undefined '100 000,00'
en-US 100,000.00
de-DE 100.000,00
ru-RU 100 000,00
hi-IN 1,00,000.00
de-CH 100’000.00