# How to convert numbers like 1e+10, 5e-6 and so on to the form 10^10, 5 * 10^-6?

I have a calculator that outputs values ​​and converts them to an exponent using the toExponential() function.
But now I want these numbers to take on a more "human-readable" form.
I tried to do it with array iteration but I doubt my solution is correct

In the array, I get several dozen elements that look like [‘1’, ‘+6’], [‘5’, ‘-12’]. I separated them by the character "e"

The result is displayed in the table as a string

Right now I managed to change all units to 10
But I still need to know the math operator and other numbers other than one

``````convertToHumanReadableNumber(num) {
let arr = []
arr.push(num.split('e'))
let arr2 = arr.map(el => {
if (el == '1') {
return el = '10'
}
})
}
``````

### >Solution :

You can use JavaScript’s built-in toExponential() method to convert a number to the exponential notation:

``````let num1 = 1e+10;
let result1 = num1.toExponential();
console.log(result1); // logs "1e+10"

let num2 = 5e-6;
let result2 = num2.toExponential();
console.log(result2); // logs "5e-6"
``````

To convert the exponential notation to the desired format, you can extract the exponent part and the mantissa part of the number and then format it as desired:

``````let num1 = 1e+10;
let [mantissa, exponent] = num1.toExponential().split('e');
let result1 = `\${mantissa} * 10^\${exponent}`;
console.log(result1); // logs "1 * 10^10"

let num2 = 5e-6;
let [mantissa, exponent] = num2.toExponential().split('e');
let result2 = `\${mantissa} * 10^\${exponent}`;
console.log(result2); // logs "5 * 10^-6"

``````