jack-doyle / front-end-interview-topics

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Front-End Interview Preparation

Javascript

Execution Context

  1. The execution context in Javascript
  2. The execution context and the lexical environment
  3. Javascript scope chain and closures
  4. Lexical environments: ECMAScript implementation

Lexical Scope

Lexical Scope

Closures

Scope & Closures

Hoisting

Understanding hoisting in Javascript

Function and block scoping

Function scopes and block scopes in Javascript

Function expressions and declarations

Function Declarations vs. Function Expressions

The this keyword

Understand Javascript's this

Call, Apply & Bind

  1. How to use Call, Apply and Bind
  2. Javascript's Apply, Call and Bind methods in-depth

Objects

Object Prototypes

Constructors

Type coercion

Typeof

Instanceof

Object.Prototype.toString

Mixins

Functions

Composition

Higher order functions

Events

Event delegation

Bubbling

Asynchronous Programming

Callbacks

Promises

Await

Async

DOM

Navigation

Selecting nodes

Traversal up and down

Traversal left and right

Manipulation

Add

Remove

Copy

Text content

CSS classnames

Performance

Document fragments

Node caching

CSS

Layout

Column layout

Flexbox

Responsive Design

Media queries

Specificity

Namespacing and naming

HTML

Semantic Markup

Tag attributes

disabled

async

defer

data-*

Meta Attributes

Accessibility

System Design

Rendering

Client-side

Server-side

Universal

State management

Unidirectional data flow

Two-way data binding

Reactive programming model

Passive programming model

Async Flow

XHR Calls

Bidirectional Calls

Web Sockets

Server-sent Events

Separation of Concerns

Model-View-Controller (MVC)

Model-View-ViewModel (MVVM)

Model-View-Presenter (MVP)

Asset Delivery

Building

Code splitting

Testing

Unit testing

Integration testing

End-to-end testing

Vending through a CDN

Web Performance

Critical Rendering Path

Service Workers

Image Optimisations

Lazy Loading & Bundle Splitting

HTTP/2 and server-push

Prefetching and preloading resources

Browser reflows

Promoting elements to the GPU

Browser layout, compositing and painting

Data Structures and Algorithms

General

HTTP Requests

GET

POST

PATCH

DELETE

Headers

Cache-Control

ETag

Status Codes

Transfer-Encoding

REST vs. RPC

Security

JSONP

CORs

iFrame

About