JSFiddle - React, Tailwind, and code Playground
JavaScript
function scaleUp(val) {
let i = 0;
while (val < 10) {
i++;
val *= 10;
}
return [val, i];
}
function scaleDown(valArr) {
let v = valArr[0];
for (let i = 0; i < valArr[1]; i++) {
v /= 10;
}
return v;
}
function test(fval) {
let va = scaleUp(fval);
let v = scaleDown(va);
console.log(fval, va, v);
if (fval !== v) {
console.error(fval, va, v);
throw new Error("NE!!!");
}
}
for (let i = 0; i <= 10; i++) {
let r = Math.random() / Math.pow(10, i);
test(r);
}