root/as3/ASound/branches/gamiken/libs/log.as

リビジョン 2391, 1.2 kB (コミッタ: gamiken, コミット時期: 3 年 前)

first commit

  • svn:executable 属性の設定値: *
Line 
1 package {
2   import flash.external.ExternalInterface;
3   import flash.utils.getQualifiedClassName;
4
5   public function log(... args):void {
6     var inspect:Function = function(arg:*, bracket:Boolean = true):String {
7        
8        
9         var className:String = getQualifiedClassName(arg);
10         var str:String;
11
12         switch(getQualifiedClassName(arg)) {
13             case 'Array':
14               var results:Array = [];
15               for (var i:uint = 0; i < arg.length; i++) {
16                   results.push(inspect(arg[i]));
17               }
18               if (bracket) {
19                 str = '[' + results.join(', ') + ']';
20               } else {
21                 str = results.join(', ');
22               }
23               break;
24             case 'int':
25             case 'uint':
26             case 'Number':
27               str = arg.toString();
28               break;
29             case 'String':
30               str = arg;
31               break;
32             default:
33               str = '[' + className + ':' + String(arg) + ']';
34         }
35         return str;
36     }
37
38     var r:String = inspect(args, false);
39     trace(r)
40    
41     try
42     {
43         ExternalInterface.call('console.log', r);
44     } catch (error:Error)
45     {
46     }
47    
48   }
49 }
Note: リポジトリブラウザについてのヘルプは TracBrowser を参照してください。