una tipos pasar parametros otra funciones funcion desde dentro codigos anonima javascript function variables anonymous-function names

javascript - tipos - Obtener el nombre de la función anónima



pasar parametros a una funcion javascript desde html (4)

Cómo obtener el nombre de la variable desde dentro de una función en este ejemplo:

// it should return A var A = function(){ console.log(this.name); }

¿Hay algo como esto?


Esa función es anónima; no tiene nombre Sin embargo, podría darle un nombre:

var A = function a() {};

Entonces su nombre es accesible a través de Function.name :

var A = function a() {}; A.name > ''a''


No, no hay nada como eso en Javascript. Esa función es anónima, por lo que no tiene nombre, y lo que quiere es ambiguo porque la función podría tener tantas variables como:

var a, b, c, d; a = b = function(){ console.log(this.name); }; c = b; d = c; a = b = 5; // a and b no longer refer to the function, but c and d both do

¿Qué es lo que realmente estás tratando de lograr? Estoy seguro de que hay otra forma de lograrlo.


Sé que este es un hilo viejo, pero aún en los resultados de búsqueda. tan solo para referencia:

una solución podría ser simplemente usar stacktrace.

var stack = new Error().stack;

use trim y split para obtener los valores deseados.


Es posible en versiones recientes de Chrome y Firefox de la siguiente manera. Solo lo recomiendo para fines de depuración (p. Ej., Rastreo de JavaScript en la no producción)

var myNameInChrome = /.*Object/.(.*)/s/(/.exec(new Error().stack)[0]; var myNameInFF = new Error().stack.split("@")[0];