Home > Web Front-end > JS Tutorial > How to Truncate Numbers to Two Decimals Without Rounding in JavaScript?

How to Truncate Numbers to Two Decimals Without Rounding in JavaScript?

Patricia Arquette
Release: 2024-11-08 20:34:02
Original
647 people have browsed it

How to Truncate Numbers to Two Decimals Without Rounding in JavaScript?

Preserving Precision: Truncating Numbers to Two Decimals Without Rounding

Often, when working with numbers, it becomes necessary to display them with a specific number of decimal places. However, using the built-in JavaScript function toFixed() may introduce unintended rounding. To address this, we must consider an alternative approach to accurately truncate numbers without rounding.

Solution: Conversion and Precision Control

To achieve this, we convert the number to a string and employ a regular expression to extract the desired number of decimal places.

function truncate(num, decimals) {
    return num.toString().match(RegExp(`^-?\d+(?:\.\d{0,${decimals}})?`))[0];
}
Copy after login

This function takes a number and the desired number of decimals as parameters. It returns a string representing the truncated value.

Example Usage:

const original = 15.7784514;
const truncated = truncate(original, 2);
console.log(truncated); // Output: "15.77"
Copy after login

In this example, the original value is truncated to two decimal places, resulting in "15.77."

Conclusion:

By harnessing string manipulation and regular expressions, we can effectively truncate numbers to a specified number of decimal places without introducing unwanted rounding. This technique ensures precision in displaying values, particularly when dealing with financial or scientific data.

The above is the detailed content of How to Truncate Numbers to Two Decimals Without Rounding in JavaScript?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template