実現したいこと
無名関数の中で自身の変数名を取得したいです。
下記のB.b関数のような、プロパティ入りの関数では関数リテラルが使えないため、
変数に入った無名関数から名前を取り出せずにいます。
A , B.b 関数から変数名を取り出す方法があれば、御指南のほどよろしくお願いいたします。
GASの非strictモードです。
該当のソースコード
GAS
1 2 var A=function(){ 3 Logger.log(arguments.callee.name); // output : "" 4 } 5 var B={}; 6 B.b=function(){ 7 Logger.log(arguments.callee.name); // output : "" 8 } 9 10 A(); // wanted output: "A" 11 B.b(); 12 13
試したこと
GAS
1 function A(){ 2 Logger.log(arguments.callee.name); // output : "A" 3 } 4 A();
functionリテラルで定義すれば、上の関数はちゃんと自身の関数名:aが返ります。
ただ、元のソースコードのB.bのような、オブジェクト形式の名前で関数リテラルは使えません。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/08 13:50