字节技术中台 前端实习生面筋

2022-03-28 一面 (1h40min)

  • 介绍项目,项目亮点随便说说

  • 切片在哪做的,整个文件计算 hash 吗

  • 前端学多久了,怎么学的,有系统学吗

  • 为什么选择 Vue

  • 假如不懂 vue 你要怎么宣传

  • MVVM 解释下

  • Vue 具体如何实现 MVVM

  • Object.defineProperty 打印题

      const person={name:'qwe'}
      Object.defineProperty(person,'name',value:'zxc')
      person.name = 'asd'
      console.log(person)
  • Promise 是什么,用来解决什么问题,回调地狱

  • Promise.all ==》 Promise allSelected

  • 怎么做的异常收集

    • try catch
    • 全局呢?更便捷的方式呢?
  • 原型链,一般用于干嘛 ==》 继承

  • JS 事件机制,为什么有这样的事件机制,如果没有会怎么样

  • 写尽可能多的继承,原型链继承、借用继承、寄生组合继承

  • 寄生组合继承什么缺点

  • ES6 继承属于哪个

  • css 动画咋做,还有吗

  • css 样式隔离方案

  • 不显示元素怎么做

  • 宽高设置为 0 就一定能不显示吗

  • display none 会在 DOM 结构中吗?

  • 深浅拷贝是什么

  • setTimeout 输出问题 ==》 let ==》立即执行函数 ==》 闭包 ==》 能被回收吗?

  • 熟悉的排序算法

  • 快排复杂度,最差情况是什么情况

  • 复杂度你是怎么理解的

  • tcp/udp 全双工和半双工

  • http 缓存

  • 为什么要有 etag ,etag 是如何生成的,5g 的文件呢,具体算法是什么样

  • https 流程

  • 为什么要有对称加密和非对称加密

  • https 交换随机数时候中间人监听即后端收到的随机数是经过中间人修改过的,同时后端返回给前端的随机数也是修改过了,这样有可能吗

  • 子序列问题

  • 对象驼峰化

  • 反问

2022-04-01 二面 45min

  • 自我介绍
  • 实习问下
  • 项目介绍
  • 为什么做这个项目
  • 怎么学的前端
  • 项目内容(难点以及相关扩展)
  • ts
    • ts 理解
    • 泛型
    • 如何获取某种类型传入泛型?(感觉是 Pick 但是当时居然没说)
    • ts 函数中指定 this
  • 性能优化
    • 图片懒加载如何实现
  • 写个合并数组简单题

2022-04-02 三面 45min

  • 自我介绍
  • 项目介绍、亮点介绍
  • 为什么做这个项目
  • 讲讲实习以及为什么离职
  • websocket 兼容处理/降级方案?SEE
  • 可靠性、有序如何保证
  • webrtc 如何传输消息具体方法是什么?同时有个好处是可以配置是否可靠是否有序
  • 讲讲 Vue 你熟悉的原理讲一个就好了
  • Object.defineProperty 与 Proxy 的区别
  • 回溯树打印题

2022-04-07 hr面 30min

  • 自我介绍
  • 目前几个 offer ,他们的业务是什么呢?
  • 了解我们的业务吗?
  • 介绍下项目,为什么做呢?
  • 能实习多久呢?
  • 介绍下之前实习
  • 具体介绍下简历上的项目
  • 为什么做这个项目呢
  • 平时是如何学习的
  • 遇到问题如何解决
  • 职业规划
  • 反问

2022-04-08 oc

2022-04-10 ol

2022-05-10 入职

#前端开发实习#
全部评论
面试这么长时间,估计是人家对你有想法吧
点赞 回复 分享
发布于 2022-06-26 21:22
牛啊大佬
点赞 回复 分享
发布于 2022-06-27 12:26
楼主试试滴滴提前批吗😂,免笔试,我主页有链接
点赞 回复 分享
发布于 2022-08-02 00:36

相关推荐

优化Webpack的构建速度是一个常见的需求,下面是一些常见的优化策略:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=fffb9e7b5576495f90d9596c40989b9f通过配置缓存:可以使用cache-loader或者hard-source-webpack-plugin来启用缓存,避免重复编译没有改动的文件。通过配置多线程/并行构建:可以使用thread-loader或者happypack来在多个工作线程中并行处理任务,加快构建速度。减少文件的解析和处理:可以通过配置resolve.extensions来减少Webpack的文件解析,只处理特定格式的文件。另外,使用include和exclude选项来限制需要处理的文件范围。优化Loader的配置:可以使用exclude选项来排除不必要的目录,只对需要处理的目录使用对应的Loader。另外,可以使用resolve.alias来配置别名,减少模块查找时间。使用Tree Shaking:通过配置mode为production,并且在package.json中将sideEffects设置为false或者具体的文件列表,开启Tree Shaking功能,剔除掉未使用的代码。合理使用Webpack的插件:根据具体需求,合理选择和配置Webpack的插件,避免不必要的处理和压缩。使用DllPlugin和缓存:可以将一些不经常变动的库使用DllPlugin预先编译,并将结果文件缓存起来,这样可以避免每次构建都重新编译这些库。以上是一些常见的Webpack构建速度优化策略,根据具体的项目需求和情况选择合适的优化方式。
点赞 评论 收藏
分享
8 60 评论
分享
牛客网
牛客企业服务