I.e. something that introduces JavaScript assuming you know a lot more about programming than your average JS developer and explains the JS pitfalls in common terms and not js “ecosystem” inventions?
I.e. something that introduces JavaScript assuming you know a lot more about programming than your average JS developer and explains the JS pitfalls in common terms and not js “ecosystem” inventions?
1. https://developer.mozilla.org/en-US/docs/Web/JavaScript/A_re...
A good read for even for some one like me, who slings JS almost daily.
In most languages that I know this is documented. They don't tell you "this sucks don't use it".
Sorry for trying to help I guess, good luck.
This is the question that you asked and that I answered.
If you're looking for the language specification, it's here (first result for "Javascript specification"): https://www.ecma-international.org/ecma-262/11.0/index.html#...
https://developer.mozilla.org/en-US/docs/Learn/JavaScript
Maybe a bit too slow if you already know other languages, but you can at least trust it not to give bad advice. There are an absolute mountain of inexperienced JS developers out there giving a lot of bad advice. Take every StackOverflow answer with a fist full of salt. MDN is reliable though.
https://eloquentjavascript.net/
It may be a bit more introductory than you're looking for, but trust me in that you'll want to read it from front to back as it builds on itself.
It's not short and quick, but it's comprehensive, good, and even fun!
https://books.goalkicker.com/JavaScriptBook/ and https://books.goalkicker.com/NodeJSBook/
It reads really well, explains the modern bits as the right way of programming, but also puts the crusty, abandoned bits into the right perspective (if you're looking at old code I guess).
It's not at all a book for new programmers, but for someone who knows Ruby well, it's a great, concise read.
https://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockfo...
It may be a perfect time for a revision.
https://www.amazon.com/gp/aw/d/1949815005/ref=dbs_a_w_dp_194...
Though I also think I took a liking to the guy when I decided he looked like Neal Stephenson.
> ('b'+'a'+ +'a'+'a').toLowerCase()
>'banana'
alert(Array(16).join("wat" - 1) + " Batman!");
Kyle Simpson's volumes are excellent.
Eloquent Javascript
The author's earlier ES6 book is great.
Most of the above books have a few chapters you'll end up skimming or skipping.
"No prior knowledge of JavaScript is required, but you should know how to program."
Otherwise, from a programmer's perspective, JS is like nothing else I've seen and it's not something you want to be using without an abstraction over it, i.e. some framework that makes life less miserable when building something more complex than a form.
I feel like being a 'JS professional', unlike other languages, mostly involves in-depth knowledge of the right tools and not the language itself. Unless, you are interested in building frameworks yourself, which I personally find no need to ever do given the available options.
Also, saying an abstraction is useless without knowing the language is similar to saying you can't drive a car without knowing how the timing belt or crankshaft works - most people do fine without either. I'm not dismissing the value of JS fluency, just suggesting that it might be unnecessary and a more practical approach can be taken.
Every time I see this statement, I wonder what the Venn diagram of people who say so and people who have ever written a line of asm looks like.
I wonder if the people say they avoid JS at all costs because it's "like assembly" have been doing that so effectively since 2003 that they never even tried modern JS
It's not even their fault, it's all they know from those online courses or boot camps.
I always see a pattern with these things. Usually if you don’t learn the language well enough, you probably are also not spending enough time learning the frameworks well enough, and you probably are not learning the DOM/Browser well enough, and you probably have not learned CSS well enough. You will have no choice but to hide behind the frameworks.
The people that just learn React or the latest ES6 think they know good enough JS, but when I see their code I see clear patterns of poor abstractions, separation of concerns, the kind of code that makes you want to take a shower after touching it.
You should absolutely learn React if you want to be employed writing with JS, but people should understand where React lies in the context of javascript. It isn't an abstraction of JS, it's a UI library written in JS.
I know that this probably isn't how you meant it, but I think what you said is a bit misleading to someone who wants to learn JS for a job.
Having skills in React are an almost guaranteed way to get a job writing JS. It's definitely not the only viable way to get employed writing JS. Contrary to popular belief, there are many jobs out there asking for Node.js skills but not necessarily React or any heavy frontend knowledge. You can also make a living doing Vue or Angular, and Svelte is an up and coming framework that will be good to learn and I believe will create lots of jobs. I've been writing mostly Ember.js code for years now, yet I'm employed.
I just want to make sure that learners don't think that it's all React or nothing. Nothing against React, by any means. If someone learns React but it doesn't interest them, their career in JS isn't over.
Many of those idioms borrow from ideas (functional programming, reactive programming) outside UI development, and outside JavaScript.
I would think that an experienced programmer starting with JavaScript would appreciate React.