1/41
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
ECMAScript (ES)
The formal standardized version of JavaScript, standardized by ECMA International.
ES5 (ECMAScript 5)
A version of ECMAScript released in 2009 with subtle updates to support JavaScript across all browsers.
ES6 (ECMAScript 6)
A major update to ECMAScript in 2015, introducing features like block-scoped variables, arrow functions, and classes.
Block-scoped variables
Variables declared using let or const, which are only accessible within the block where they are declared.
Arrow functions
A shorthand for defining functions in JavaScript using the => syntax. They inherit the this keyword from the parent scope.
Classes in ES6
A syntax introduced in ES6 that simplifies object-oriented programming using "syntactical sugar" for prototype inheritance.
Template literals
A feature in ES6 that allows embedding expressions in strings using ${} and backticks for easier string interpolation.
Array.prototype.includes()
A method introduced in ES2016 to check if a particular element exists in an array.
Exponential operator ()
A feature introduced in ES2016 for raising a number to the power of another number, replacing Math.pow().
Object.entries()
A method introduced in ES2017 that returns an array of key-value pairs from an object.
Object.values()
A method introduced in ES2017 that returns an array of the values of an object.
Async and Await
Features introduced in ES2017 for handling asynchronous code more easily by returning promises inside asynchronous functions.
Rest/Spread syntax for objects
A feature in ES2018 that allows spreading and collecting properties in objects using the … syntax.
Asynchronous iteration
A feature in ES2018 that allows using await inside loops to handle asynchronous data sources.
Array.prototype.flat()
A method introduced in ES2019 to flatten arrays up to a specified depth.
Symbol.prototype.description
A method in ES2019 that allows retrieving the description of a Symbol object.
Object.fromEntries()
A method introduced in ES2019 that transforms a list of key-value pairs into an object.
JSX (JavaScript XML)
A syntax extension for JavaScript, used in React to write HTML-like code within JavaScript.
Components in React
Reusable UI elements in React that represent parts of the user interface.
Unidirectional data flow
A design pattern in React where data flows in a single direction from the parent component to child components.
Flux
A pattern used with React to manage the flow of data in an application, maintaining unidirectional data flow.
Virtual DOM
A lightweight representation of the actual DOM in React, used for optimizing the performance of web applications.
Webpack
A module bundler used in React development to bundle JavaScript files for the browser.
Babel
A JavaScript compiler that converts modern JavaScript (ES6 and beyond) into a backward-compatible version that can run in older browsers.
npm (Node Package Manager)
A package manager used for installing and managing dependencies in JavaScript projects.
ReactDOM
A package that provides methods to interact with the DOM in React applications.
webpack-dev-server
A development server for running a React application, with live reloading and debugging features.
babel-loader
A Webpack loader that enables Babel to transpile JavaScript files within a Webpack build process.
HtmlWebpackPlugin
A Webpack plugin used to generate an HTML file that includes the bundled JavaScript.
React Native
A framework for building native mobile applications using React.
create-react-app
A tool that sets up a new React project with a default configuration.
main.js
The main entry point file in a React project where the JavaScript code is executed.
index.html
The HTML file that serves as the root of the React app, linking to the bundled JavaScript file.
JSX
A syntax extension for JavaScript used in React to describe the UI, making it easier to write and read components by resembling HTML.
JSX Wrapper
JSX requires a single parent element (like a div) to wrap multiple sibling elements when returning them from a component’s render method.
Attributes
Custom attributes can be added in JSX using the data- prefix (e.g., data-myattribute).
JavaScript Expressions
Expressions in JavaScript can be used inside JSX, wrapped in curly brackets {}.
Inline JavaScript
JSX cannot directly use if statements but allows conditional logic via ternary expressions inside {}.
Styling
React recommends inline styles, which should be written in camelCase syntax (e.g., fontSize instead of font-size).
Comments
JSX allows comments within JSX syntax, using curly braces {} for single-line comments and /* */ for multi-line comments.
Naming Convention
In JSX, HTML tags are lowercase, while React components start with an uppercase letter. Additionally, class and for are replaced by className and htmlFor to avoid conflicts with JavaScript keywords.