# How to Reverse a Number in JavaScript

To reverse a number in JavaScript, you need to convert the number to a string, split it into an array, reverse the array and then join it back together. This guide will walk you through the process with code snippets for clarity.

A number reversal flips the order of its digits. For example, reversing `123` yields `321`. In JavaScript, since numbers can't be directly reversed, the operation is typically performed on strings.

## Convert the number to a string

Start by converting the number to a string using the `toString()` method. This step is necessary because the reversal methods apply to strings and arrays, not numbers.

``````let number = 12345;
let stringNumber = number.toString();``````

## Split the string into an array

Once the number is a string, use the `split('')` method to create an array where each element is a single digit.

``let arrayDigits = stringNumber.split('');``

## Reverse the array

Use the `reverse()` method to invert the order of the elements in the array.

``let reversedArrayDigits = arrayDigits.reverse();``

## Join the array back into a string

After reversing, use `join('')` to concatenate the elements back into a single string.

``let reversedStringNumber = reversedArrayDigits.join('');``

## Convert the string back to a number

Lastly, convert the string back into a number with the `parseInt()` function. If you need to handle decimals, use `parseFloat()` instead.

``let reversedNumber = parseInt(reversedStringNumber, 10);``

## Handling negative numbers

For negative numbers, you'll need to remove the minus sign before reversing and add it back after.

``````function reverseNumber(num) {
let isNegative = num < 0;
let reversedString = Math.abs(num).toString().split('').reverse().join('');
let reversedNum = parseInt(reversedString, 10);
return isNegative ? -reversedNum : reversedNum;
}``````

## Dealing with decimals

If the number has decimals, the process is similar, but you'll need to handle the decimal point.

``````function reverseFloat(num) {
let stringNumber = num.toString();
let parts = stringNumber.split('.');
let reversedInteger = parseInt(parts[0].split('').reverse().join(''), 10);
if (parts.length === 2) {
let reversedDecimal = parseInt(parts[1].split('').reverse().join(''), 10);
return parseFloat(`\${reversedInteger}.\${reversedDecimal}`);
}
return reversedInteger;
}``````

## Final thoughts

This guide provided a method to reverse both integers and floating-point numbers. It's important to note that JavaScript may not preserve leading zeros in a reversed number since they are not significant in a numerical representation.

Invite only

The next generation of charts.

Coming soon.

The next generation of charts. Coming soon.

The next generation of charts. Coming soon.

Fast. Opinionated. Collaborative. Local-first. Keyboard centric. Crafted to the last pixel. We've got 50 slots for Alpha access.

## Related posts

SOC II
Type 2 Certified

### Features

Proudly carbon-neutral.

SOC II
Type 2 Certified

### Features

Proudly carbon-neutral.

SOC II
Type 2 Certified