JavaScript

3 min. read

JavaScript

ReactJS (JavaScript Library)
https://reactjs.org/

methodical learner

https://github.com/facebook/create-react-app

React static generator
https://github.com/gatsbyjs/gatsby

ECMAScript 6
http://es6-features.org/#Constants

https://ponyfoo.com/books/practical-modern-javascript/chapters

This is where State Management comes in. Instead of storing your state (in other words, your data) bit by bit in each component, you store it in a single global store that then dispatches it to your React components:

You can think of Redux as a bank: you can’t go to your local branch and manually modify your account total (“here, let me just add a couple extra zeroes!”). Instead, you fill out a deposit form, then give it to a bank teller authorized to perform the action.

Similarly, Redux also won’t let you modify your global state directly. Instead, you pass actions to reducers, special functions that perform the operation and return the new, updated state as a result.

https://github.com/reduxjs/redux-devtools

https://egghead.io/courses/getting-started-with-redux

http://graphql.org/

GraphQL exposes a single endpoint that lets the client query for the data it needs.

Think of it as making multiple trips to the butcher shop, bakery, and grocery store, versus giving someone a shopping list and sending them on their way to all three.
https://www.apollographql.com/

Vue.js
Compared to React, some of its key selling points are:

Officially-maintained routing and state management libraries.
Focus on performance.
Lower learning curve thanks to using HTML-based templates.
Less boilerplate code.

As it stands, the two main things that still give React an edge over Vue are the size of the React ecosystem, and React Native (more on this later). But I wouldn’t be surprised to see Vue catch up soon!

Elm
Elm is not just a framework, but an entire new language that compiles down to JavaScript.
This brings multiple advantages, such as improved performance, enforced semantic versioning, and no runtime exceptions.

JavaScript Server-side
Node, ExpressJS

JavaScript Testing
Jest, Enzyme

Build Tools
Webpack

Type Systems
TypeScript, Flow

CSS Modules
Styled Components

Expressions vs Statements

Expressions
Statements

JavaScript Optional Chaining Operator

https://medium.com/@adambene/optional-chaining-operator-in-javascript-342082de2db
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining
https://www.javascripttutorial.net/es-next/javascript-optional-chaining-operator/

Courses

HTML, CSS, and JavaScript: The Big Picture - Pluralsight

https://app.pluralsight.com/library/courses/html-css-javascript-big-picture/exercise-files

https://www.freecodecamp.org/news/javascript-dom-build-a-calculator-app/

Resources

https://jscomplete.com/

References

https://medium.freecodecamp.org/a-study-plan-to-cure-javascript-fatigue-8ad3a54f2eb1

https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f

https://stateofjs.com/

https://github.com/markerikson/react-redux-links

https://wesbos.com/

https://circleci.com/blog/its-the-future/