TypeScript:
Округлення чисел
Як:
Округлення в TypeScript можна виконати за допомогою кількох методів. Ось короткий огляд:
// Math.round округлює до найближчого цілого числа
console.log(Math.round(1.5)); // Вивід: 2
// Math.ceil округлює вгору до найближчого цілого числа
console.log(Math.ceil(1.1)); // Вивід: 2
// Math.floor округлює вниз до найближчого цілого числа
console.log(Math.floor(1.8)); // Вивід: 1
// toFixed округлює до фіксованої кількості десяткових знаків
let num = 1.23456;
console.log(num.toFixed(2)); // Вивід: "1.23"
// Зауважте: toFixed повертає рядок! Використовуйте parseFloat, щоб конвертувати назад, якщо потрібно.
console.log(parseFloat(num.toFixed(2))); // Вивід: 1.23
Поглиблений огляд
В старі часи округлення було необхідним через обмежений простір і проблеми з точністю на ранніх комп’ютерах. Сьогодні арифметика з плаваючою крапкою може призводити до дивних результатів через спосіб зберігання чисел у двійковому форматі. Альтернативи округленню включають floor, ceil та trunc (для видалення десяткових дробів без округлення).
Внутрішні механізми заслуговують на увагу: Math.round
слідує принципу “округлення до більшого” (також відомий як “комерційне округлення”), тоді як Math.floor
і Math.ceil
є простими. toFixed
може спричиняти неочікувані результати, оскільки він повертає рядок, і він округляє за принципом “округлення до найближчого парного” (також відомий як “округлення банкіра”), особливо корисне для зниження упередженості при багаторазовому округленні одних і тих самих чисел.