UNPKG

368 BJavaScriptView Raw
1export default function(x, p) {
2 x = x.toPrecision(p);
3
4 out: for (var n = x.length, i = 1, i0 = -1, i1; i < n; ++i) {
5 switch (x[i]) {
6 case ".": i0 = i1 = i; break;
7 case "0": if (i0 === 0) i0 = i; i1 = i; break;
8 case "e": break out;
9 default: if (i0 > 0) i0 = 0; break;
10 }
11 }
12
13 return i0 > 0 ? x.slice(0, i0) + x.slice(i1 + 1) : x;
14}