JS:

1. 原始值和引用值类型及区别
 
  数组
 
  3. 类数组与数组的区别与转换
  4. 数组的常见API
  19. JS中的String、Array和Math方法
  16. Array.sort()方法与实现机制
  JS的map()和reduce()方法
  Symbol概念及其作用
   Set和Map数据结构
 
判断数据类型typeof、instanceof、Object.prototype.toString.call()、constructor
  “==”和“===”的区别
 
 
13. 防抖和节流
 
对象:
  模板字符串
  解构赋值。
   深拷贝与浅拷贝
2 变量:
  let、const和var的概念与区别
   变量提升与暂时性死区
  变量的结构赋值
 

3 循环语句:
  Iterator和for...of(Iterator遍历器的实现)
  循环语法比较及使用场景(for、forEach、for...in、for...of)
 
 
4 函数:
  arguments
  函数柯里化及其通用封装
  箭头函数及其this问题(ES6)
原型和原型链
  prototype与__proto__的关系与区别
  - 如何理解js原型链?为什么这样设计?
面向对象:
   new的原理。new 原理?如何实现一个new ? new 原理?如何实现一个new ?
   继承的实现方式及比较
  new和Object.create的区别
   class基本语法及继承
  - es5几种继承方式 优缺点?es6继承?
 
5 作用域和作用域链、执行期上下文
  - 描述一下作用域和作用域链?作用域链是什么时候确定的?函数定义时会确定哪些东西?预编译阶段会发生了什么?描述一下AST?
  闭包及其作用
  如何正确判断this?
  bind、call、apply的区别
JS的垃圾回收机制
 
 
 
6 EventLoop事件循环
  宏任务与微任务
  setTimeout用作倒计时为何会产生误差?
 
7 异步
12. Generator及其异步方面的应用
13. async函数
14. 几种异步方式的比较(回调、setTimeout、Promise、Generator、async)
9. Promise(手撕Promise A+规范、Promise.all、Promise相关API和方法)
- 如果要实现一个请求5s内没正常返回就返回我想要的,比如'超时',怎么用Promise实现?
- 一个异步请求,如果5s内有返回就正常返回,如果5s内没返回就输出'超时',如何用promise实现?
- promise几种状态?怎么实现promise.finally?
 
DOM常见的操作方式
  addEventListener和onClick()的区别
   DOM的location对象
   currentTarget和target区别?
 
BOM属性对象方法
 

8. Proxy 创建代理。
  Reflect对象

 

模块化:

  模块加载方案比较(CommonJS和ES6的Module)
  ES6模块加载与CommonJS加载的原理

   JS模块包装格式有哪些?

 

https:

 23. 浏览器从输入URL到页面渲染的整个流程(涉及到计算机网络数据传输过程、浏览器解析渲染过程)
24. 跨域、同源策略及跨域实现方式和原理
25. 浏览器的回流(Reflow)和重绘(Repaints)
 
ajax

- axios的原理,和xhr、fetch区别,axios在node能使用吗?node怎么发起请求?

- tarojs原理?重编译轻运行时的优缺点?轻编译重运行时优缺点?
17. Ajax的请求过程
 

 
 
 
 
 

React面试:

- react hooks, useEffect和useCallback区别?
- react性能优化
- 简述diff算法?为什么是O(n3)

 
- redux原理?connect高阶组件的原理?如何连接store和业务组件?
- 如何写一个高阶组件?高阶组件有哪几种使用场景(反向继承,生命周期劫持)?
- react setState原理?diff原理?setState同步还是异步?
- react key的原理?
- react事件处理机制?
- react fiber为什么会出现?解决了什么场景下什么问题?
- react hooks为什么会出现?有什么优势?
- useEffect、useCallback、useMemo的区别?
- koa原理?洋葱模型?dispatch函数细节?

 

 

 

 

webpack打包:

 webpack loader原理?plugin原理?手写过吗?

- Webpack打包优化?如何分chunk?如何按需加载组件?

 

git:

 git rebase? git merge --squash ? 团队中如何使用git?

 

posted on 2021-03-01 11:47  程序员草莓  阅读(153)  评论(0编辑  收藏  举报