views:

83

answers:

4

I'm trying to alert() the properties of the javascript object. Since the text in alert isn't scrollable, I can see only part of it. How do I fix this? I'm using FF 3.5.

+1  A: 

You can split the text into many pieces and alert many different times.
Or, you can make a textArea on the page and set the innerHTML of the textarea to your output message [what I do] Note that if you want to do that, you have to replace \n with <br />

In chrome, sometimes the "okay" button of the alert doesn't even show >_>

ItzWarty
+7  A: 

Install Firebug and use console.log(myObj);

You can inspect the object properly in this way!

David Caunt
The only tricky bit to keep in mind about using console.log is it will cause an error when you run the script with the firebug pane closed.
Erik
@Erik: `if (console.log) console.log(myObj);`
Andrew Moore
or, `if (!console) console = { log: function() {} };`
Matthew Crumley
+1  A: 

Use a cross-browser logging library such as my own log4javascript. Among many other things, it has a searchable, filterable logging console and allows you to dump objects to the console using logging calls:

var obj = {
    name: "Octopus",
    tentacles: 8
};

log.debug(obj);

/*
   Displays:

   19:53:17 INFO  - {
     name: Octopus,
     tentacles: 8
   }
*/
Tim Down
+1  A: 

Have a look at Blackbird. It's an onscreen javascript logger/debugger. In you code you would place log.debug(object) and it will be output to the browser in a div overlay. I don't know if it works if you just pass it an object, but apparently you already have the object.dumpvars() already worked out.

jspash
Blackbird is pretty and works. My own log4javascript (http://log4javascript.org/) is more fully featured, including listing object properties automatically for a logging call such as `log.debug(object)`.
Tim Down