format thousand to K
by oktaviardi pratama
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.min.js"></script>
<h1 class="display">
1000 converted to 1K
</h1>
JavaScript
// converts number to string representation with K and M.
// toFixed(d) returns a string that has exactly 'd' digits
// after the decimal place, rounding if necessary.
/* function numFormatter(num) {
if(num > 999 && num < 1000000){
return (num/1000).toFixed(0) + 'K'; // convert to K for number from > 1000 < 1 million
}else if(num > 1000000){
return (num/1000000).toFixed(0) + 'M'; // convert to M for number from > 1 million
}else if(num < 900){
return num; // if value < 1000, nothing to do
}
}
console.log(numFormatter(1000))
*/
function nFormatter(num, decimal=1) {
if (num > 999999999 && num < 9950000000) {
return (num / 1000000000).toFixed(3) + 'B';
}
if (num >= 1000000000) {
return (num / 1000000000).toFixed(decimal).replace(/\.0$/, '') + 'B';
}
if (num > 999999 && num < 9950000) {
return (num / 1000000).toFixed(3) + 'M';
}
if (num >= 1000000) {
return (num / 1000000).toFixed(decimal).replace(/\.0$/, '') + 'M';
}
if (num > 999 && num < 9950) {
return (num / 1000).toFixed(3) + 'K';
}
if (num > 999 && num <= 1000000) {
return (num / 1000).toFixed(decimal).replace(/\.0$/, '') + 'K';
}
return num;
}
function nominalAbbreviation(num, decimal=1) {
if (num > 999999999 && num < 10000000000) {
return slicingNominal('B', num, 2, 1000000000);
}
if (num >= 1000000000) {
return slicingNominal('B', num, decimal, 1000000000);
}
if (num > 999999 && num < 10000000) {
return slicingNominal('M', num, 2, 1000000);
}
if (num >= 1000000) {
return slicingNominal('M', num, decimal, 1000000);
}
if (num > 999 && num < 10000) {
return slicingNominal('K', num, 2, 1000)
}
if (num > 999 && num < 1000000) {
return slicingNominal('K', num, decimal, 1000)
}
return num;
}
function slicingNominal (type='K',num=0, decimal=0, digit=1000) {
let nominal=0
let...