Front-end basic interview questions

Front-end basic interview questions

1. Front-end foundation

  • JS
  • Sass, Less
  • Browser and HTTP protocol
  • React, Hook, Redux, Antd, Next
  • Vue, Vuex, Nuxt
  • SSR
  • Network performance optimization/security

1.JS

  • 1.1 What are the differences between arrow functions and ordinary functions?
  • 1.2 Briefly describe the concept of closures. What are the ways to implement closures? Pros and cons of closures?
  • 1.3 Alternately replace the values of two ordinary variables, except for the third intermediate variable, what other methods can be used?
  • 1.4 What should I pay attention to when using Object.assign()?
  • 1.4 How to implement a deep copy?
  • 1.5 Tell me about your understanding of the Generator function?
  • 1.6 Talk about your understanding of the prototype chain?
  • 1.7 What is the difference between Fetch and axios?
  • 1.8 What is function currying?
  • 1.9 How to use promise, generator, and async/await, and what is the difference?
  • 1.10 What is the difference between apply/call/bind?
  • 1.11 How many methods can be used to achieve js array de-duplication?
  • 1.12 js event loop event loop? (Also called JS execution mechanism)
  • 1.13 How does js deal with anti-shake and throttling?
  • 1.14 What for(var i=0;i<3;i++){setTimeout(()=> console.log(i), 0)}is the difference between using var and let in a loop?

2. Sass, Less

  • 2.1 What grammatical functions do they provide?

3. Browser and HTTP protocol

  • 3.1 Briefly describe the three-way handshake?

4. React, Hook, Redux, Antd, Next

  • 4.1 What is the life cycle of React?
  • 4.2 Is setState synchronous or asynchronous? What did react do when setState?
  • 4.3 Tell me about your understanding of advanced components?
  • 4.4 How do you control the on-demand refresh of components?
  • 4.5 The principle of the diff algorithm in React?
  • 4.6 Tell me about your understanding of React's rendering principle
  • 4.7 What rendering hijacking
  • 4.8 Do you understand and use Hook?
  • 4.8 The difference between useMemo and useCallback?
  • 4.9 Performance optimization of React components and hooks?
  • 4.10 How does Redux work?
  • 4.11 Has Antd ever been used?
  • 4.12 Did you know about Next?

5. Vue, Vuex, Nuxt

  • 5.1 Your understanding of MVVM?
  • 5.2 What life cycle hooks do you usually use?
  • 5.3 How does Vue realize two-way data binding?
  • 5.4 The realization principle of Vue virtual DOM?
  • 5.5 Performance optimization in vue?
  • 5.6 What is the difference between the caching of calculated attributes and method calls?
  • 5.7 Why must data in a Vue component be a function?
  • 5.8 How Vuex works
  • 5.9 How does vue-router implement?//hash mode, history mode
  • 5.10 Slots, named slots, scoped slots?
  • 5.11 Responsive principle?
  • 5.12 What is the use scenario of keep-alive?
  • 5.13 The principle of vue data two-way binding?

6. SSR

  • 6.1 What is SSR? What is the difference between SSR and CSR?

7. Network performance optimization/security

  • 7.1 How did you do front-end authentication for your previous projects?
  • 7.2 xss? SOL injection?

2. the back-end foundation

  • Node
  • SQL
  • Linux

1. Node

  • 1.1 The node event loop?
  • 1.2 The onion model of koa?

2. SQL

3.Linux

3. cross-platform

1. React Native

2.Flutter

3. Weex

4. small program

5. packaging tools

1. Webpack

  • 1. How to use Webpack to optimize front-end performance?
  • 2. The difference between Loader and Plugin

6. project management

1. Git

1.1 What commands are used for git version rollback and viewing remote branches?

7. Docker