2010-03-12 11 views
36

Estoy acostumbrado a depurar JavaScript en Chrome o Firefox solo porque sus herramientas de desarrollador integradas son mucho más limpias que las de IE. IE8 avanzó con las herramientas de desarrollo siendo más pulidas, pero todavía no están completamente listas para el rapé. Me gusta poder pasar por el código como si estuviera en Visual Studio, y eso es muy bueno sobre IE, sin embargo, cuando trato de hacer un simple console.log en un objeto que tengo, en Firefox/Chrome/etc. Realmente puedo explorar ese objeto.Console.log en IE en un objeto recién publicado [object Object]

En IE, la consola es simplemente emitiendo el siguiente:

REGISTRO: [object Object]

¿Hay alguna manera de profundizar en ese objeto en IE como en Chrome/Firefox/etc.?

+3

posible duplicado de [¿Cómo puedo varsar JavaScript vars en IE8?] (Http://stackoverflow.com/questions/1956384/how-do-i-dump-javascript-vars-in-ie8) – fresskoma

+0

http://stackoverflow.com/questions/1306232/how-to-debug-javascript-with-ie-8 – ColacX

Respuesta

11

Tal vez usted puede probar lo que Xavi sugiere aquí: How do I dump JavaScript vars in IE8?

+0

Sí, esto es ideal para la depuración, pero no completamente lo que estaba buscando. – StephenPAdams

+0

¿Podría agregar la respuesta a sus preguntas? Otros sitios se caen, cambian, etc. y no se pueden editar. – mikemaccana

51

Es posible que desee probar:

console.log(JSON.stringify(foobarObject)); 
+0

Quizás estoy entendiendo esto mal, pero si escribo "console.log ('foo')" en el campo de entrada en el En la parte inferior de la ventana de la consola, la consola (área de texto de arriba) dice: >> console.log ('foo') undefined –

+0

También debería tener el mensaje "LOG: foo". console.log devuelve indefinido, que es lo que muestra en la consola también. En IE9, se modificó para que no se muestren resultados indefinidos en la consola. – Andy

29

Uso:

console.dir(obj); 

Esta voluntad le dará todas las propiedades del objeto también en IE.

+8

Nota: console.dir muestra solo el primer nivel de propiedades. Entonces cuando crearía var a = {a: 'b', b: {a: 'b', b: 'c'}}, el resultado de console.dir (a) sería: { \t a: "b", \t b: [object Object] } –

+0

Sí, no tan útil para ningún objeto que sea de clase, etc. – brianlmerritt

0

Agregue el objeto a mirar y puede verlo y analizarlo completamente desde el panel de reloj.

+0

Solo funciona si el objeto se encuentra en el ámbito global. –