# Fullstack interview
## HTML/CSS
- [ ] What is <head> and why do we need it in DOM structure
- [ ] What is purpose of adding semantical tags like **header**, **nav**, **footer** to a website
- [ ] Difference between cookie, localStorage and sessionStorage
- [ ] Tag **script**, its position in HTML, defer, async ?
- [ ] Difference between window and document
## Javascript
- [ ] Descrtucturing. Difference between
const { a, b, c } = object;
and
const a = object.a;
const b = object.b;
const c = object.c;
- [ ] const b = [];
console.log(b.push(b))
- [ ] Array.forEach and Array.map - difference, cases for using each one
- [ ] MAP and SET objects. Usability and difference between them
- [ ] const a = {};
const b = { key: "b" };
const c = { key: "c" };
a[b] = 123;
a[c] = 456;
console.log(a[b]);
- [ ] What returns setInterval(() => console.log("Hi"), 1000);
- [ ] What is generator function
function* generator(i) {
yield i;
yield i * 2;
}
const gen = generator(10);
console.log(gen.next().value);
console.log(gen.next().value);
- [ ] Function declaration and Function expression. Explain **hoisting**. Array function vs Regular Function (Rest parameters vs arguments)
const obj = {
name: 'Wow',
sing() {
console.log('1 this ', this);
const anotherFunc = function() {
console.log('2 this ', this);
}
anotherFunc();
}
};
obj.sing();
- [ ] What is a problem of copying objects, which have other objects or array inside them ? How to solve this problem ?
- [ ] OOP. Principles.
- [ ] Event loop, Event Emitter (Node.js)
- [ ] ES5,6,8, how asynchronus operations are handled in JS
## React / Redux
- [ ] What is React, his advantages and disadvanges ?
- [ ] Reconciliation.
- [ ] Virtual and Shadow DOMs, main ideas, difference
- [ ] Why can`t browser read JSX ?
- [ ] Class Components vs Functional Components
- [ ] What is HOC?
- [ ] useMemo, useCallback, useReducer, custom hooks
- [ ] Redux, how it works ? immutability, async ways to use Redux
## Node
- [ ] What is node.js ?
- [ ] Node.js Event loop
- [ ] Streams in Node.js (Readable, Writable, Duplex, Transform)
- [ ] Rest API and Rest
- [ ] What is middleware ?
- [ ] What are the different types of HTTP requests?
- [ ] Task from Webstorm
- [ ] Databases. How indexes are created and how they can improve performance while getting info from db.
## General
- [ ] SOLID, DRY
- [ ] Calculate angle between clock wise at 3:15pm
- [ ] Describe auth flow from front and backend sides