·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]as3中第三方类库对数字和字符串进行格式化源代码

时间:2013-08-30 10:05cnblogs.com
用NumberFormat对象的format()与currencyFormat()方法。由于是第三方类库,测试过程中发现有些不完善。自己写了一个格式化货币的方法

用NumberFormat对象的format()与currencyFormat()方法。由于是第三方类库,测试过程中发现有些不完善。自己写了一个格式化货币的方法

  1. package { 
  2.     import flash.display.Sprite; 
  3.      
  4.     public class Sample1118 extends Sprite 
  5.     { 
  6.         public function Sample1118() 
  7.         { 
  8.             var money:Number = 26591234569.5678; 
  9.             trace(formatString(money));//26,591,234,569.57  
  10.             var i:int = 1234
  11.             trace(formatString(i));//cuplayer.com提示1,234.00  
  12.             trace(formatString("fox")); 
  13.         } 
  14.         private function formatString(obj:Object):String 
  15.         { 
  16.             if(obj  is  int||obj  is  uint||obj  is  Number) 
  17.             { 
  18.                 var money:Number = obj  as  Number; 
  19.                 var str:String = (Math.round(money/0.01) * 0.01).toString(); 
  20.                 var _index:int = str.indexOf("."); 
  21.                 var cursor:int = 0
  22.                 if(_index>-1) 
  23.                 { 
  24.                     cursor = _index
  25.                     strstr = str.substring(0,_index + 3); 
  26.                     while(str.length < _index+3) 
  27.                     { 
  28.                         strstr = str + "0"; 
  29.                     }            
  30.                 } 
  31.                 else 
  32.                 { 
  33.                     cursor = str.length; 
  34.                     strstr = str+".00"; 
  35.                 } 
  36.                 var arrStr:Array = new Array(); 
  37.                 while(cursor-3>=0) 
  38.                 { 
  39.                     arrStr.push(str.substr(cursor-3,3)); 
  40.                     cursorcursor = cursor-3; 
  41.                 } 
  42.                 if(cursor>0) 
  43.                 { 
  44.                     arrStr.push(str.substr(0,cursor)); 
  45.                 } 
  46.                 arrStr.reverse(); 
  47.                 return arrStr.join(',') + str.substr(str.indexOf(".")); 
  48.             } 
  49.             else 
  50.             { 
  51.                 return obj.toString(); 
  52.             } 
  53.         }    
  54.     } 

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器