Are there really no JavaScript-capable IDEs out there that support code completion, jump to definition, re-factoring, etc? I don't see anything in the language that would preclude such features.
For sure it has some oddities with the completion as it can't be sure what the prototypes are, but then it just lists functions from different prototypes which match your prefix.
function DoStuff(foo) //<<<<No information what type foo is
{
foo.DoA(); //No way to know what methods foo support
foo.DoB();
}
For most situations where it is possible to infer the type, Visual studio actually does a pretty good job on code completion, but no jump to definition.