1 function number_format(number, decimals, dec_point, thousands_sep){ 2 var exponent = ""; 3 var numberstr = number.toString (); 4 var eindex = numberstr.indexOf ("e"); 5 var i, z; 6 if(eindex > -1){ 7 exponent = numberstr.substring (eindex); 8 number = parseFloat (numberstr.substring (0, eindex)); 9 } 10 11 if(decimals != null){ 12 var temp = Math.pow (10, decimals); 13 number = Math.round (number * temp) / temp; 14 } 15 var sign = number < 0 ? "-" : ""; 16 var integer = (number > 0 ? 17 Math.floor (number) : Math.abs (Math.ceil (number))).toString (); 18 19 var fractional = number.toString ().substring (integer.length + sign.length); 20 dec_point = dec_point != null ? dec_point : "."; 21 fractional = decimals != null && decimals > 0 || fractional.length > 1 ? (dec_point + fractional.substring (1)) : ""; 22 if(decimals != null && decimals > 0){ 23 for(i = fractional.length - 1, z = decimals; i < z; ++i) 24 fractional += "0"; 25 } 26 27 thousands_sep = (thousands_sep != dec_point || fractional.length == 0) ? 28 thousands_sep : null; 29 if(thousands_sep != null && thousands_sep != ""){ 30 for (i = integer.length - 3; i > 0; i -= 3) 31 integer = integer.substring (0 , i) + thousands_sep + integer.substring (i); 32 } 33 return sign + integer + fractional + exponent; 34 }
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.