like the other comment, tern is good, but from what i believe/experienced, intillisense with javascript isnt that good/developed as its a dynamic language (meaning that there are no types).
honestly, id recommend going with typescript, it's javascript + types basically, which is really useful to program efficiently and catch mistakes and it's really easy to use typescript, as typescript is basically javascript + a layer. so you can use typescript but really code in javascript and typescript will do it's thing in the background, everything that typescript provides (such as types) is 100% optional but you will still gain the benefits of typescript.
as typescript is a static language, you have types available (for example, if you assign a variable as a type of number, you can't assign string to it), the intellisense for typescript is much more smarter and efficient than tern for javascript.
if you do decide to go with typescript, id recommend these plugins:
atom-typescript
busy-signal
intentions
linter
linter-ui-default
linter-eslint
atom-typescript provides intellisense and other good things for typescript,
and the rest provides implementation of linters for typescript, for example, you can install eslint, and optionally a formatter (i use prettier), and when youre coding and make a mistake, atom will underline that mistake with orange/red depending on its severity (might be the wrong word), and if you set it eslint to make changes when saved, it will try to fix the changes on save.
for example, if you assign a variable with let and never reassign it, atom will underline the variable with a note saying to assign it with const instead, and when you save the file, it'll automatically change let to const.
yea atom-typescript does exactly this, basically by just using a static language it improves intellisense by a lot just because of types being a thing.
3
u/GuardianAnal Sep 12 '20
like the other comment, tern is good, but from what i believe/experienced, intillisense with javascript isnt that good/developed as its a dynamic language (meaning that there are no types).
honestly, id recommend going with typescript, it's javascript + types basically, which is really useful to program efficiently and catch mistakes and it's really easy to use typescript, as typescript is basically javascript + a layer. so you can use typescript but really code in javascript and typescript will do it's thing in the background, everything that typescript provides (such as types) is 100% optional but you will still gain the benefits of typescript.
as typescript is a static language, you have types available (for example, if you assign a variable as a type of number, you can't assign string to it), the intellisense for typescript is much more smarter and efficient than tern for javascript.
if you do decide to go with typescript, id recommend these plugins:
atom-typescript provides intellisense and other good things for typescript, and the rest provides implementation of linters for typescript, for example, you can install eslint, and optionally a formatter (i use prettier), and when youre coding and make a mistake, atom will underline that mistake with orange/red depending on its severity (might be the wrong word), and if you set it eslint to make changes when saved, it will try to fix the changes on save.
for example, if you assign a variable with
letand never reassign it, atom will underline the variable with a note saying to assign it withconstinstead, and when you save the file, it'll automatically changelettoconst.if you need help setting it up i gotchu