A Flash Developer Resource Site

Results 1 to 6 of 6

Thread: How to make numbers look similar to instagram follows or facebook likes

  1. #1
    Client Software Programmer AS3.0's Avatar
    Join Date
    Apr 2011
    Posts
    1,404

    How to make numbers look similar to instagram follows or facebook likes

    Will work on a shorter version soon but this code can make 1000 look like 1k, scripts good until 999.9 trillion 999.9T
    PHP Code:
    var types:Array = new Array("K","M","B","T");
    var 
    hits "100000000000000";
    if(
    hits.length == && hits.charAt(1) == 0){
    hits hits.charAt(0) + _root.types[0];
    }else if(
    hits.length == && hits.charAt(1) != 0){
    hits hits.charAt(0) +"." +  hits.charAt(1) + _root.types[0];
    }else if(
    hits.length == && hits.charAt(2) == 0){
    hits hits.charAt(0) +  hits.charAt(1) + _root.types[0];
    }else if(
    hits.length == && hits.charAt(2) != 0){
    hits hits.charAt(0) +  hits.charAt(1) + "." hits.charAt(2) + _root.types[0];
    }else if(
    hits.length == && hits.charAt(3) == 0){
    hits hits.substr(0,3) + _root.types[0];
    }else if(
    hits.length == && hits.charAt(3) != 0){
    hits hits.substr(0,3) + "." hits.charAt(3)+ _root.types[0];
    }else if(
    hits.length == && hits.charAt(3) != 0){
    hits hits.substr(0,3) + "." hits.charAt(3)+ _root.types[0];
    }else if(
    hits.length == && hits.charAt(1) == 0){
    hits hits.charAt(0) + _root.types[1];
    }else if(
    hits.length == && hits.charAt(1) != 0){
    hits hits.charAt(0) + "." hits.charAt(1) + _root.types[1];
    }else if(
    hits.length == && hits.charAt(2) == 0){
    hits hits.substr(0,2) + _root.types[1];
    }else if(
    hits.length == && hits.charAt(2) != 0){
    hits hits.substr(0,2) + "." hits.charAt(2) + _root.types[1];
    }else if(
    hits.length == && hits.charAt(3) == 0){
    hits hits.substr(0,3) + _root.types[1];
    }else if(
    hits.length == && hits.charAt(3) != 0){
    hits hits.substr(0,3) + "." hits.charAt(3) + _root.types[1];
    }else if(
    hits.length == 10 && hits.charAt(1) == 0){
    hits hits.substr(0,1) + _root.types[2];
    }else if(
    hits.length == 10 && hits.charAt(1) != 0){
    hits hits.substr(0,1) +"." hits.charAt(1) +  _root.types[2];
    }else if(
    hits.length == 11 && hits.charAt(2) == 0){
    hits hits.substr(0,2) +  _root.types[2];
    }else if(
    hits.length == 11 && hits.charAt(2) != 0){
    hits hits.substr(0,2) +"." hits.charAt(2) +  _root.types[2];
    }else if(
    hits.length == 12 && hits.charAt(3) == 0){
    hits hits.substr(0,3)  +  _root.types[2];
    }else if(
    hits.length == 12 && hits.charAt(3) != 0){
    hits hits.substr(0,3)  + "." hits.charAt(3) +  _root.types[2];
    }else if(
    hits.length == 13 && hits.charAt(1) == 0){
    hits hits.substr(0,1) + _root.types[3];
    }else if(
    hits.length == 13 && hits.charAt(1) != 0){
    hits hits.substr(0,1) + "." hits.charAt(1) +  _root.types[3];
    }else if(
    hits.length == 14 && hits.charAt(2) == 0){
    hits hits.substr(0,2) +  _root.types[3];
    }else if(
    hits.length == 14 && hits.charAt(2) != 0){
    hits hits.substr(0,2) + "." hits.charAt(2) +  _root.types[3];
    }else if(
    hits.length == 15 && hits.charAt(3) == 0){
    hits hits.substr(0,3) +  _root.types[3];
    }else if(
    hits.length == 15 && hits.charAt(3) != 0){
    hits hits.substr(0,3) + "." hits.charAt(3) +  _root.types[3];
    }
    testfield.text hits

  2. #2
    Senior Member
    Join Date
    Aug 2012
    Posts
    115
    PHP Code:
    var i:Number;
    var 
    size:Number;

    function 
    doNumber(number:Numberdecimals:Number):Number
    {
        
    decimals Math.pow(10decimals);

        var 
    letter:Array = ["K""M""B""T"];

        for (
    letter.length 1>= 0i--)
        {
            
    size Math.pow(10, (1) * 3);

            if (
    size <= number)
            {
                
    number Math.round(number decimals size) / decimals;

                if ((
    number == 1000) && (letter.length 1))
                {
                    
    number 1;
                    
    i++;
                }

                
    number += letter[i];

                break;
            }
        }
        return 
    number;
    }

    var 
    hits:Number 123458712458209;

    trace(doNumber(hits1));
    trace(doNumber(hits3));
    trace(doNumber(hits5));
    trace(doNumber(hits10)); 

  3. #3
    Client Software Programmer AS3.0's Avatar
    Join Date
    Apr 2011
    Posts
    1,404
    Nice!

  4. #4
    Client Software Programmer AS3.0's Avatar
    Join Date
    Apr 2011
    Posts
    1,404
    4 lines shorter than your code:

    PHP Code:
    function doNumber(a,b):Number 
    var 
    units:Array = ["K","M","B","T"]; 
    for(
    i=units.length-1;i>=0;i--){ 
    if((
    Math.pow(10, (1) * 3))<=a){ 
    a=Math.round(a*Math.pow(10,b)/(Math.pow(10,(i+1)*3)))/Math.pow(10,b); 
    if((
    a==1000)&&(i<units.length-1)){ 
    a=1
    i++; 

    a+=units[i]; 
    break; 


    return 
    a

    var 
    hits:Number=1550000
    trace(doNumber(hits,1)); 
    trace(doNumber(hits,3)); 
    trace(doNumber(hits,5)); 
    trace(doNumber(hits,10)); 
    Last edited by AS3.0; 12-23-2015 at 02:58 PM.

  5. #5
    Senior Member
    Join Date
    Aug 2012
    Posts
    115
    wow,

    you delete line spaces and make var name changes and mix decimals with other math.
    I wish you use format code button too....

    When you learn array good alloy and manage multi dimensional object arrays (OOP - xenomaren is asking for this) then you will go back over all your codes (probably you game too) you have done before and do it again properly, wee see.

    compare you first post code with you last post here.

  6. #6
    Client Software Programmer AS3.0's Avatar
    Join Date
    Apr 2011
    Posts
    1,404
    Maybe one day ill be like you

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center