Resources to Polish Your JavaScript
Tags: javascript, raftlabs
Published: 2022-03-11 12:08:25

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q4e3ibooghz2hr2zq9t6.png)
JavaScript, often abbreviated as JS, is a programming language that conforms to the ECMAScript specification. JavaScript is high-level, often just-in-time compiled, and multi-paradigm. It has curly-bracket syntax, dynamic typing, prototype-based object orientation, and first-class functions.

It is one of the most common programming languages used today. Its popularity increased after the advent of Node.js. Brendan Eich initially wrote JavaScript though others have contributed to it throughout the years. JavaScript powers most of the websites that we see today.‍

#### **1\. Eloquent JavaScript**

Eloquent JavaScript is an E-book on JavaScript that covers a vast number of topics on the subject. This is an excellent book for beginners in JavaScript. It is licensed under a Creative Commons attribution-noncommercial license. All code in this book may also be considered licensed under an MIT license. It is the 3rd edition of the E-book.

A paper version of Eloquent JavaScript, including an additional chapter, is being brought out by [No Starch Press](http://www.nostarch.com/ejs3).

The book is divided into three parts and consists of 21 chapters. The first part consists of 12 chapters that cover all the basics of JavaScript. The second part consists of 7 chapters that cover JavaScript interaction with browsers. It contains topics like Document Object Model(DOM) and Event handling. The last part is made up of 2 chapters and serves as an introduction to Node.js.

This material created by Marijn Haverbeke.

[More info](https://eloquentjavascript.net/)

#### ‍**2\. Introduction to JavaScript( FreecodeCamp.Org)**

[FreeCodeCamp.org](http://FreeCodeCamp.org) is a donor-supported tax-exempt nonprofit organization with a mission to teach people to code for FREE. It is an interactive coding lesson to teach basic JavaScript to beginners.

The class covers many JavaScript basics, and each interactive section has a built-in compiler to test your code.

The class starts with simple things like creating comments, declaring variables, etc., and slowly moves to more advanced JavaScript. Several useful topics like Recursive functions, scopes, escape sequences, loops, and datatypes are covered effectively. The best part is that you don't need any editors or dependencies installed on your computer because [freeCodeCamp.org](http://freeCodeCamp.org) provides an online compiler to test your code.

Material created by [freeCodeCamp.org.](http://freeCodeCamp.org)

[More info](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/basic-javascript/)

#### ‍**3\. Learning JavaScript Design Patterns**

Design patterns are reusable solutions to commonly occurring problems in software design. They help us build upon the combined experience of many developers that came before us and ensure we structure our code in an optimized way, meeting the needs of problems we're attempting to solve.

Design patterns also provide us with a common vocabulary to describe solutions. It can be significantly simpler than describing syntax and semantics when attempting to convey a way of structuring a solution in code form to others.

This E-Book is not targeting beginners. Instead, it targets advanced and experienced developers who seek to improve their coding skills. The book is divided into 16 chapters covering common and eloquent design patterns employed while writing your code. The book also covers common jQuery coding patterns.

This material was created by Addy Osmani.

[More info](https://addyosmani.com/resources/essentialjsdesignpatterns/book/)

#### ‍**4\. JavaScript Promises: an introduction**

JavaScript Promises: an introduction is an article that gives the reader an idea about what JavaScript promises are. It covers a good amount of topics about the subject. The article starts with JavaScript before the promise was added and Later talks about how promise changed the nature of JavaScript programming. The article is filled with code snippets and diagrams, so the reader gets a clear idea of what is implied in the article.

Topics like promise are for intermediate to advanced programmers, so this article is aimed at them.

This Material was created by Jake Archibald.

[More info](https://web.dev/promises/)

#### **5\. Build 30 things in 30 Days**

This aims to be an online course plus a coding challenge where all the fundamentals of JavaScript, CSS, and HTML are covered. By the end of the course, students will make 30 exciting projects from scratch, from a clock to whack a mole game. All the projects are very different, challenging, and fun. By the end of the projects, users will have a good idea about JavaScript and its interactions in browsers, CSS and HTML.

This Material was created by Wes Bos.

[More info](https://javascript30.com/)

‍

*Originally posted at* [*raftlabs.co*](https://raftlabs.co/development/top-free-resources-to-learn-javascript-in-2021?utm_source=devto&utm_campaign=crosspost)