Learning JavaScript
This repository contains a set of Code Kata I've used to practice and learn JavaScript.
How to run the examples
- Fetch all dependencies
npm install
- Run all the tests
npm test
- Run all the tests with coverage reports
npm run coverage
Nice to explore later
- Bank Kata https://github.com/sandromancuso/Bank-kata
- Explore code coverage tools for JavaScript
- How to test the front-end code (interaction with the DOM, etc ...)?
- Setup Vim for JavaScript
- Setup Emacs for JavaScript
Resources I found about JavaScript
In JavaScript there is NO concept of Class.
Everything is an Object.
Inheritance between objects is achieved with a mechanism known as Prototypal Inheritance.
We can create Objects and then link them together OLOO (Objects-Linked-to-Other-Objects).
- A re-introduction to JavaScript (JS tutorial)
- Introducing JavaScript objects
- Eloquent JavaScript
- You Don't Know JS
- JavaScript Allonge
- Professor Frisby's Mostly Adeguate Guide to Functional Programming
- JavaScript For Beginners: the βnewβ operator
- Export and Import
- JavaScript Strict Mode
- Compatibility Matrix Node/ES6
- Compare the differences between ES6 and ES5
- ES6 stands for ECMAScript 6 (a.k.a. ECMAScript 2015)
Testing and JavaScript
- JavaScript Unit Testing for Beginners
- Video about Setting up Unit Testing with Mocha and Chai
- Video about Unit Testing With Mocha and Chai
- Ended up with Chai as assertions library, and Mocha as test runner
- Discovered that Chai allows three different assertion styles (Should, Expect and Assert). It's just a matter of style.
- But there is also another Testing Framework to experiment with, Jest.
- An Overview of JavaScript Testing in 2019
- End to End test with Cypress