ActionScriptでnumber_format

Flash ActionScriptでPHPのnumber_formatに該当するようなものを作ってみました。

123456789を→123,456,789のように、一般的な金額表示にフォーマットします。
function number_format(str, slcNum, sepStr) {
  if(isNaN(val)){
    var strVal:String = str.toString();
  }
  var strLngth:Number = strVal.length;
  var slcTms:Number = strLngth/slcNum;
  var isSrp:Number = strLngth%slcNum;
  var rsltAry:Array = new Array();
  var rsltStr:String = "";
  var times:Number = 0;
  for ($i=slcTms; $i>1; $i--) {
    var slcPnt:Number = strLngth-(times*slcNum);
    rsltAry[$i] = strVal.slice(slcPnt-slcNum, slcPnt);
    rsltStr = sepStr+rsltAry[$i]+rsltStr;
    times++;
  }
  if(isSrp>0){
    rsltStr = strVal.slice(0,isSrp)+rsltStr;
  }else{
    rsltStr = strVal.slice(0,slcNum)+rsltStr;
  }
  return rsltStr;
}

number_format(フォーマットする数値(文字列),分割単位 ,区切り文字);
のようにコールすれば変換された値が返されます。
例)var rslt=number_format(123456789, 3,",");
trace(var);
123,456,789となります。

一応、金額のフォーマット用なので、後ろの文字から分割単位ごとに区切っていますが、他にも例えば
var rslt=number_format(123456789, 4,"/");
【結果】1/2345/6789
とかもできます。
タグ:actionscript
posted by digital-squad at 2006年12月09日 09時38分 | Comment(0) | TrackBack(0) | Flash / ActionScript
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック