The following texts are freely available online:
- ECMA-262: ECMAScript 2017 LANGUAGE SPECIFICATION, 8th Edition, at www.ecma-international.org/ecma-262/8.0/. This provides the official standard to the current version of JS
- ELOQUENT JAVASCRIPT, 2nd Edition, by Marijn Haverbeke, at http://eloquentjavascript.net/.
- EXPLORING ES6, by Dr. Axel Rauschmayer, at http://exploringjs.com/es6/.
- EXPLORING ES2016 AND ES2017, by Dr. Axel Rauschmayer, at http://exploringjs.com/es2016-es2017/. This text will let you get up to date with the latest features in JS.
- FUNCTIONAL-LIGHT JAVASCRIPT, by Kyle Simpson, at https://github.com/getify/Functional-Light-JS.
- JAVASCRIPT ALLONGÉ, by Reginald Braithwaite, at https://leanpub.com/javascript-allonge/read.
- PROFESSOR FRISBY'S MOSTLY ADEQUATE GUIDE TO FUNCTIONAL PROGRAMMING, by DrBoolean (Brian Lonsdorf), at https://github.com/MostlyAdequate...