Hello, _NN _, you wrote: _NN> Hello, Young, you wrote: Y>> Prompt how to make the following: Y>> - to receive in a method of a class class name? _NN> TS it is broadcast in JS, and there classes can and not to be. _NN> that for you means class name in ES5? Well i.e. - but me syntactic sugar is necessary to me, I do not want in each place where I plan to write this.log.debug still to write in the text "ClassName:: MethodName bla" To me it is necessary to write some thousand lines with comfort and as a whole to hammer. Plus I can and under ES6 - so classes as though are. But I am is specific about this point the decision found - class SomeClass {log = Log.create (this.constructor.name); constructor () {this.log.d (' Test ');} } Gives me that that is necessary. It is necessary to understand in two things - method name obtaining - that each time when I and I rename a method, well it would be necessary to change broad gulls, and the second part to hide these things most - i.e. it was not necessary to transfer evidently in the designer class name and in a method method name - and he defined. Y>> - being in a method to receive method name and a class (if it is a class method) which your method caused? _NN> arguments.caller / Fuction.caller ' caller ' and ' arguments ' are restricted function properties and cannot be accessed in this context.