The "QUICKLY" I don't have an answer to. That is totally dependant on you, your tenacity, your background, your learning style, and whether or not you have the aptitude to learn JavaScript (and/or programming in general).
As for learning how to program, I don't see it as a linear process. I see it as an evolution - that as time passes in a linear fashion, you evolve as a programmer based on what you have learned, and how you have been applying that to your coding. You don't always have to delve deep into a topic, but as you come across concepts that you don't understand, take the opportunity to then dive deeply into that topic - that is how you will become a more proficient programmer and progress past being a junior developer.
As for learning resources (all of these are free):
freecodecamp: freecodecamp.com
MDN JavaScript: developer.mozilla.org/en-US/docs/Web/JavaScript/G…
Eloquent JavaScript: eloquentjavascript.net
There's also the You Don't Know JavaScript (YDKJS) series which I have heard is not easily consumable by someone new to coding (I hard a hard time digesting one of the books I printed out and switched to something else myself):
github.com/getify/You-Dont-Know-JS
Ultimately: writing code and delving deeper into topics past the basics is what is going to make you more productive/proficient in any programming language.
There are also a TON of topics past just picking up the basics of JavaScript (or any language for that matter) to becoming a proficient programmer. It's an iterative process that I don't feel can be done "QUICKLY".
Hope that helps!