3 ms·
> [tooling] is perfect with JavaScript Tooling is terrible with JavaScript. Even if you use something like Tern, it's still really bad. You can pass arbitrary
by ahoge 13y ago
> [tooling] is perfect with JavaScript
Tooling is terrible with JavaScript. Even if you use something like Tern, it's still really bad.
You can pass arbitrary arguments to functions. Types and arity isn't checked. Optional positional/named arguments (with default values) don't exist. Passing some options object and "foo = foo || 5" is the best you can do. You can't tell, with absolute certainty, that some object doesn't have some particular property. A string might have a "lenght" property (should have been "length", that was a typo).
Your IDE can make some educated guesses and offer some auto-complete suggestions based on that.
There is also type coercion. Maybe you really wanted to create NaN in a very elaborate manner. Multiplying some array with some object is totally legit. No squiggly line for that.
That's a far cry from being perfect.
Never used something like C# or Java? Dart's tooling is also pretty good, for example. Even AS3 offers much better tooling than JS. TypeScript does of course also offer way better tooling.
JavaScript's tooling is terrible, really.
- city41 13y agoMy point is JS tools work with JS as intended, and work with CS to varying degrees of success and with a variety of ways they handle CS. I was a C# developer for many years, so I know what I'm missing.