Programming and technology is in a constant state of flux. Nothing stays the same for very long. Everything evolves and we are further abstracted or conceptually removed from the physical architecture of the computer.
In the original days of programming, you had Machine code, shortly thereafter came assembly and then one more step in the abstraction direction we were introduced to high level langauges like C, etc...
Early high level languages required a fairly intimate knowledge of the under lying architecture, but as years went on an higher level languages were introduced, like VB...no longer were you responsible for memory management. Current generation programming languages like Java, C# or even PHP for that matter take it one step further, but completely abstracting you from the underlying computer architecture (both physical and virtual in the case of OS)...
Now when you write code, it works on a Mac, Linux, Windows, mainframe, laptop, portable device or Dell desktop. More advanced abstraction features are introduced such as garbage collection, but others are introduced which require your learning a new technology. When I first discovered HTML I was impressed by how easy it was to output colorful test to screen.
Doing that in C++ or VB was a daunting task, but using HTML it became a breeze...but HTML wasn't programming an API using C++ it was another language/technology onto it's own. Later I was introduced to javascript and soon realized how limiting it was in persisting any kind of real application state, so the hunt began and I stumbled onto server side programming...which led me to Perl, ASP and eventually PHP.
PHP introduced me to SQL and databases, until then I had worked directly with files, building custom file headers, etc for each unique application I built. SQL was confusing and a turn off as I knew I could do it by hand, but once the concept of SQL 'clicked' it was a huge turning point in my ability to develop enterprise applications...no longer was I limited to writing custom Windows controls, etc...as any enterprise application completely written from scratch would be absolutely rediculouly hard to complete...
And that cycle continues day in day out...as new concepts are introduced...we must learn them as developers...
The question you should be asking yourself is are you ready to constantly learn...and never stop, because once you do you become obselete
Of course you should learn Javascript, especially if your working in the web development industry...heck you should even familiarize yourself with C# or Java and desktop development...just so you know how they differ, etc...
Thats what I love about programming and computers in general...you can never stop learning...just as in life...if you fail to evolve in a positive sense...you die.
Never stop learning and seeking to improve your developer skillsets...it's one of those things in life that I don't think any other industry can match...change is inevitable in software development so you must adapt...
I think most programmers with any number of years experience under their belt would say: "I've likely forgotten more about tech & programming than I know and understand right now"
Thats what I say...Learn It. Love It. Live It.
Cheers