PDA

View Full Version : JavaScript IDE Suggestions?



Trinithis
07-04-2007, 05:26 AM
Up until this summer, I have coded in Notepad, but recently, I have been introduced to what an IDE is because of my Java class. (Using JBuilder) Anyway, I want to advance from Notepad, and I don't know what JS IDE is "the best".

Preferably, I would want one that displays an object's properties when a dot is typed after an object (and other spiffy features).

Oh, and free too.

Just browsing google, the Aptana JS IDE (http://www.aptana.com/screenshots.php) looks good, but I would still like some input if you have any.

Twey
07-04-2007, 11:24 AM
Preferably, I would want one that displays an object's properties when a dot is typed after an objectThis is known as autocomplete.

Personally, I've never felt JS was complex enough to require an IDE. I've used IDEs for Java (Eclipse) and C++ (MSVC6, Dev-C++, and KDevelop), but it just feels like overkill using an IDE for JS. I've heard good things about Aptana, though.

mwinter
07-04-2007, 05:46 PM
Up until this summer, I have coded in Notepad, but recently, I have been introduced to what an IDE is because of my Java class. (Using JBuilder) Anyway, I want to advance from Notepad, and I don't know what JS IDE is "the best".

IDEs aren't really suitable for Javascript/ECMAScript. Debugging - stepping and breakpoints - aren't generally possible because the IDE is unlikely to be able to simulate the host properly. Tools such as searching for definitions and function usage is difficult due to the dynamicism of the language. Autocomplete isn't really practical, either: for statically-typed languages like C++ and Java, the type of every variable and property is known, therefore the IDE can know exactly which (visible) members are available for a given variable. However, with dynamically-typed languages, the type can change from one statement to the next.

The best I think one can hope for is syntax highlighting and checking, though even the latter is a little dubious if the grammar cannot be changed.