Reputation: 2695
Haven't touch javascript for 3 years. Just got a javascript project and wanted to know any new ways or tools emerged these years to debug javascript? I used alert 3 years ago.
I am using IE
Upvotes: 17
Views: 21594
Reputation: 118651
For IE (which I don't suggest using), the latest version (IE8) includes developer tools.
For Firefox, there's an extension called Firebug that has DOM manipulation, a JS console, and more.
WebKit (used in Safari and Chrome) has a built-in Web Inspector that includes a JS debugger, along with a DOM outline and manipulation tools, and a JS console.
Upvotes: 24
Reputation: 1
LINE BY LINE JAVASCRIPT DEBUGGING
To get following set of features try any of the below mentioned two methods.
Features:
Method 1:
Method 2:
Upvotes: 0
Reputation: 48713
I argue to use build-in browser debugger for performance reason. Firefox and Chrome one are good enough.
They allow browse DOM, show dynamically generated sources, show network activity, profile JS, etc.
But don't miss printf
-approach with:
console.log("this is %o, event is %o, host is %s", this, e, location.host);
and:
console.log("%s", new Error().stack);
Upvotes: 0
Reputation: 10114
I use firebug most of the time with the following firebug plugins.
FireRainbow, FireRainbow enables javascript syntax highlighting for Firebug. This is really cool. Saves a lot of time.
FirePHP,FirePHP enables you to log to your Firebug Console using a simple PHP method call.
Widerbug, can leverage wide screens for js debugging/development. Obsolete now as it is supported in Firebug 1.9 right out of the box.
Upvotes: 0
Reputation: 736
real programmers use printf() traces for debugging (kidding).
var de =true, bug =console.log||alert||(de=false)
de&&bug( "Enjoy!")
When not in debug mode, just do de=false. Minimal performance penalty
Upvotes: 1
Reputation: 691
I use Javascript Debugger plugin to debug errors that are not easy to figure out in firebug. You can set up break points and step through problem area to see variable values..etc. It's a very useful tool.
Upvotes: 0
Reputation: 16513
If you use Visual Studio, I highly recommend debugging with IE, despite what others say. When you hit a debugger
statement in IE and you have debugging enabled, you'll get a pop-up to start debugging in Visual Studio.
I don't like Firebug anymore, I don't know where it went wrong, but it's become highly unreliable (ignoring debugger
statements) and really can't compete with VS as far as debugging is concerned.
Upvotes: 2
Reputation: 67802
If you need IE7 debugging, use IE8 in compatibility view with developer tools.
Upvotes: 2
Reputation: 10046
Aptana is a great dev platform that allows you to debug both FireFox and IE.
Upvotes: 0
Reputation: 717
I realize I'm answering a question you didn't ask, but have you tried jQuery? It's a javascript library that abstracts a lot of the DOM manipulation stuff for you so you don't have to worry so much about cross-browser compatibility issues. There are other similar libraries out there, but I believe jQuery has the biggest following at the moment. http://jquery.com/
I use Firebug in Firefox every day. In addition to debugging Javascript (and by extension, jQuery or any other js library), it's a great for CSS debugging.
Upvotes: 1
Reputation: 117
Firebug for FireFox and AJAX Dynatrace for IE http://ajax.dynatrace.com/pages/
Upvotes: 1
Reputation: 6878
Use the Firebug extension for Firefox, or the built-in Web Inspector in any WebKit browser (Chrome or Safari). In IE8, you can use the built-in Developer ToolS.
Upvotes: 40
Reputation: 3220
As others have pointed out, most javascript debugging tools come as part of a browser because they are tightly integrated with the Javascript engine itself. This is probably a good thing because you will want to debug each browser separately if you run into a browser-specific quirk.
In the Internet Explorer world, you have two options:
Upvotes: 1
Reputation: 7776
You really need a crossbrowser toolkit. Here's mine:
EDIT:
IE 8 added some developer tools, but I haven't used them to any great extent.
EDIT:
If you haven't done JS development in a while I recommend saving yourself a lot of time debugging cross browser issues by browsing the compatibility tables on Peter-Paul Koch's excellent quirksmode site.
Upvotes: 15
Reputation: 34391
I think a Visual Studio / IE8 combo is excellent. Beats Firebug for JavaScript debugging, IMO (and you, of course, use a framework like jQuery to handle crossbrowser issues).
Upvotes: 2
Reputation: 20965
Dreamweaver as I write it and Firebug for more indepth debugging. alert()s are pretty useful too.
Upvotes: 1