Subscribe / Unsubscribe Enewsletters | Login | Register

Pencil Banner

Review: 10 JavaScript editors and IDEs put to the test

Martin Heller | Feb. 7, 2014
WebStorm and Sublime Text lead a field of diverse and capable tools for JavaScript programming

Viewing and navigation are extremely important to me when I'm reviewing code, whether it's other people's code, my old code, or my questionable new code. WebStorm easily navigates to declarations and symbols, and it finds and highlights usages of symbols, labels, and files.

JavaScript is not only still evolving, but it has different implementations in different browsers and other environments. WebStorm lets you set your JavaScript language version as low as JavaScript 5.1 and as high as ECMAScript Harmony, and it shows you the browser compatibility of your current choice.

Code inspections built into WebStorm cover many common JavaScript issues as well as issues in Dart, EJS, HTML, Internationalization, LESS, SASS, XML, XPath, and XSLT. WebStorm includes JSHint (which is recommended by the jQuery team) and supports JSLint.

Configuring Node.js often requires a painful session in the command shell. WebStorm automates Node.js and NPM installation, upgrading, and source code configuration. WebStorm also allows you to debug Node.js applications and autocomplete CommonJS class members.

In addition to debugging Node.js applications, WebStorm can debug JavaScript code running in Mozilla Firefox or Google Chrome. It gives you breakpoints in HTML files as well as JavaScript files, and it lets you customize breakpoint properties. It shows you frames, variables, and watch views in the debugger UI, and it provides runtime evaluation of JavaScript expressions (and an elements tab in Google Chrome).

During debugging, a feature called LiveEdit allows you to change your code and have the changes immediately propagate into the browser where you are running your debug session. This saves time and helps you avoid the common problem of trying to figure out why your change didn't do anything, only to discover that you forgot to refresh your browser.

For unit testing, WebStorm bundles the JsTestDriver plug-in. This was originally a Google project, but JetBrains is now contributing to its development. In addition, WebStorm can integrate with the Karma test runner. For either testing method, WebStorm tracks code coverage.

Refactoring is an important step that many software developers tend to avoid because it's so easy to introduce errors when you do it manually. However, while you must know how to do it manually and always decide what needs to be done, an editor that can automate refactoring can be a big time-saver. There isn't much fancy refactoring to do in a JavaScript library, especially compared to a Java or C++ library, but WebStorm automates all of the refactoring types that make sense: renaming; extraction of variables, parameters, and methods; inlining; changing signatures; moving; and copying.

WebStorm can deploy via FTP, SFTP, FTPS, to local or mounted folders, and in place. WebStorm can download, upload, synchronize, and compare directories and files on demand, and it can automatically upload if you wish.


Previous Page  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  Next Page 

Sign up for CIO Asia eNewsletters.