JSFiddle - React, Tailwind, and code Playground

by Brenton Strine

HTML

console.log(magnitudes[i], i);
  console.log(magnitudes[i][0], i, 0);
  console.log(magnitudes[i][1], i, 1);
  console.log("---");return;

JavaScript

console.clear();
var tests0 = [
1,
5,
455,
667,
999,
1000, 1001, 1040, 1300, 1900, 2300, 3400, 4900, 9800, 9999, 
10959, //10k
12386, 
13930,
40782,
80384,
99999,
103989,//103k
193849,
293749,
405839,
999999,//999k
1208476,//1.2m
1984736,
3805857,//3.8m
6082746,//6m
9999999,//9.9m
13958759,//13m
50827633,//50m
99999999,//99m
111111111,//111m
555555555,//555m
999999999,//999m
1111111111,//1.1B
5555555555,//5.5B
9999999999,//9.9B
45456567678, // 45B
345456567678, // 345B
1345456567678, // 1.3T
];

var tests = [
5,   //5
55,  //55
555, //555
999, //999
1111,		//1.1k
5555,		//5.5k
9999,		//9.9k
11111,	// 11k
55555,	// 55k
99999,	// 99k
111111,	//111k
555555, //555k
999999,	//999k
1200100,		//1.2m
9999999,		//9.9m
13000100, 	//13m
999000000,	//999m
1000000000, 	//1B
1333222111,		//1.3b
9900000000,		//9.9b
15000000000,	//15b
150000000000,	//150b
999000000000,	//999b
1000000000000,	//1t
1800000000000,	//1.8t
8800000000000,	//8.8t
18800000000000,	//18t
98800000000000,	//98t
933800000000000,	//933t
1000000000000000,	//1000t
1233800000000000,	//1233t
982374987239487239487239487230487,	//982374987239487200000T

];

var stringify3 = function (number) {
            var k = 1000;
            var m = 1000000;
            var b = 1000000000;
            var t = 1000000000000;
            var makeString = function (n, magnitude, postfix, fraction) {
                // fraction = 10 means show 10ths, e.g. 1.1, 3.5, 2.9
                // fraction = 1 means show 1ths, e.g. whole integers
                return Math.floor(n / (magnitude / fraction)) / fraction + postfix;
            };
            if (number < k) {
                return number;
            } else if (number < k * 10) {
                return makeString(number, k, "K", 10);
            } else if (number < m) {
                return makeString(number, k, "K", 1);
            } else if (number < m * 10) {
                return makeString(number, m, "M", 10);
            } else if (number < b) {
               ...