【前端面经】美图Meitu 面试

11,860 阅读4分钟

meitu.jpg

一面

  1. 做的主要是什么项目,桌面端的吗

  2. 用的主要是什么技术栈

  3. vue 有了解吗

  4. 移动端开发一般怎么判断是什么平台,安卓、IOS、微信?

  5. 移动端页面,页面的尺寸、宽高怎么去处理?

  6. 怎么根据设计稿的尺寸计算出 rem

  7. react

    1. 函数式组件,在一个应用周期里,什么时机会被调用到呢,函数会被调用多少次
    2. 什么情况下会触发组件更新?
    3. 子组件没有任何的 props,父组件在渲染的时候,子组件会跟着渲染吗
    4. React.memo 会做什么处理
    5. 组件 return JSX,这个需要在编译的时候转化才能运行,在编译阶段会被转义成什么 JS 代码?
    6. react 函数式组件,hooks 有一定的写法规范,是出于什么样的考虑,会有这样的限制?
    7. react fiber 是在什么情况下诞生的,是为了解决什么问题
    8. react 优化需要手动优化、有没有一些方案可以自动处理这个问题
  8. 服务端渲染

    1. 项目中有没有服务端渲染的项目,有没有了解过如果用 react 需要配合什么框架去做
    2. 对服务端渲染原理了解吗,比如是怎么实现服务端渲染的?
    3. 服务端要做什么处理,达成生成 DOM 结构的目的?
  9. vue

    1. 怎么实现响应式,依赖收集
  10. react vue 性能方面的差异

  11. vue 有 computed,react 是怎么处理的

  12. 对除 JS 之外的其他语言有了解吗

  13. 编程里进程和线程的概念

  14. 一个进程可能会有几个堆几个栈

  15. 堆内存和栈内存为什么会分成这两种,各自有什么不同

  16. JS 是一个单线程的语言,它这个特点有什么好处吗,为什么要设计成单线程的?

  17. nodejs 相较于其他的服务端,有什么优点吗?

  18. js 运行需要什么

  19. V8 是用什么语言写的,为什么要用

  20. 高级语言需要什么样的步骤才能让计算机运行

  21. 编译 C++代码的程序是用什么语言写的

  22. 用 nodejs 写过什么吗

  23. 事件循环能解释一下吗

    1. 如果有一个 setTimeout(()=>{}, 1000),这个回调是什么时候进入到队列里排队呢,是执行到 setTimeout 的时候,还是等 1000ms 之后呢
  24. 事件循环,这些是谁在处理

  25. 浏览器环境下, JS 执行在哪个进程哪个线程

  26. 解释一下闭包

    闭包:juejin.cn/post/717069…

    1. 有没有什么必要条件需要满足才能产生闭包
    2. 如果有一个外部函数内部返回一个内部函数,内部函数引用了外部函数的变量,产生闭包,如果这个外部函数被调用 10 次,会产生多少个闭包呢?
    3. 对其中一个闭包里的变量进行修改之后,会影响其他闭包里的变量吗
    4. 有没有别的写法能生成闭包
  27. 原型链继承方式

  28. 递归的定义,用到的场景有哪些

  29. 解释一下链表?

  30. 深拷贝

深拷贝实现: juejin.cn/post/735224…

  1. 遍历对象的所有属性

    1. for...in...
    2. Object.keys()
  1. CSS 定位有哪几种

二面

一直聊项目

三面 现场 领导面

  1. 介绍项目经历
    1. 遇到什么问题
    2. 怎么解决的

HR 面

不完整记录

  1. 离职的原因是什么
  2. 你熟悉 VUE 吗?
  3. 学习一些新技术,或者是业务中碰到的一些难题,你是针对性去解决会比较多一些,还是说你有系统的学习的一些规划呢?
  4. 工作过程中哪些成长比较大,遇到过哪些难题,怎么解决的?
  5. 你们的加班强度怎么样?