• js面试题汇总:


    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?

  • 相关阅读:
    SpringMVC返回JSON数据时日期格式化问题
    elementUI-tree组件 懒加载
    vue elementUi tree 懒加载使用详情
    Mybatis ResultMap Collection 复合主键
    ElasticSearch-IK分词
    Spring中的InitializingBean接口的使用
    ContextLoadListener & DispatcherServlet 加载顺序以及加载过程
    Spring中查看加载配置文件中 加载类的个数及详情
    DispatcherServlet 被加载顺序
    JetBrainsIDEA-structure结构继承的图标说明
  • 原文地址:https://www.cnblogs.com/hacker-caomei/p/14462764.html
Copyright © 2020-2023  润新知