2011-12-19 15 views

Respuesta

14

Probar console.dir.

console.dir(f); 
0

Porque una función no es un objeto.

Si lo hace:

var f = function() {}; 
var my_instance = new f(); // aha! 
my_instance.a = 1; 
console.log(my_instance); 

Debe obtener lo que espera.

Una función puede ser una clase, pero nunca un objeto. Use new.

+0

Mal. Una función * es * un objeto. –

+0

Las funciones de JavaScript son objetos (son de "primera clase"). No hay problema con la asignación de una propiedad a una función ('f.a' en la pregunta). Es una buena forma de emular campos estáticos en JavaScript. En su ejemplo, la propiedad 'a' solo estará presente en la instancia' my_instance'. –

3

console.dir enumera todas las propiedades definidas de un objeto. Creo que esto es probablemente lo que estás buscando.

cómo aparece esto en FF (Firebug)

console.dir in Firebug

Como esto aparece en la consola de cromo

console.dir in Chromium

no estoy seguro de si hay alguna documentación de Chrome en esta funcionalidad, pero there is Firebug documentation en el console objeto.

Cuestiones relacionadas