site/node_modules/d3-format/src/formatTrim.js

12 lines
399 B
JavaScript
Raw Normal View History

2024-10-14 08:09:33 +02:00
// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.
export default function(s) {
out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {
switch (s[i]) {
case ".": i0 = i1 = i; break;
case "0": if (i0 === 0) i0 = i; i1 = i; break;
default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;
}
}
return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;
}