阿里云前端面试

09/14 一面

  1. 自我介绍,前端经历
  2. 长列表渲染优化,异步加载节点信息。元素不定高场景下怎么做虚拟列表。
  3. 性能优化的指标。
  4. XSS注入和SQL注入排查修复。
  5. 微前端技术,qiankun框架,spa和mpa,js隔离、样式隔离。
  6. 通用上传组件,中间件机制洋葱模型。
  7. 低代码平台优势劣势。(问了低代码协议相关,没看过)
  8. 进程线程协程概念及区别。线程共享进程中哪些资源。
  9. 如何写一个死锁。
  10. ES6新增特性,js作用域和块级作用域。
  11. 闭包和箭头函数特性。箭头函数编译后的es5产物(不会QAQ)。
  12. 原型与原型链,es6的class编译成es5的产物。
  13. CommonJS和ESModule区别
  14. Vue3响应式原理,vue2中怎么解决新增属性的响应式。
  15. 跨域解决方法。
  16. 反问。

09/19 笔试

  1. 第一题不记得了,比较简单
  2. 第二题:以下数据结构中,id 代表部门编号,name 是部门名称,parentId 是父部门编号,为 0 代表一级部门,现在要求实现一个 convert 方法,把原始 list 转换成树形结构,parentId 为多少就挂载在该 id 的属性 children 数组下,结构如下:
let list =[
    {id:1,name:'部门A',parentId:0},
    {id:2,name:'部门B',parentId:0},
    {id:3,name:'部门C',parentId:1},
    {id:4,name:'部门D',parentId:1},
    {id:5,name:'部门E',parentId:2},
    {id:6,name:'部门F',parentId:3},
    {id:7,name:'部门G',parentId:2},
    {id:8,name:'部门H',parentId:4}
];
const result = convert(list, ...);

// 转化后
let result = [
    {
      id: 1,
      name: '部门A',
      parentId: 0,
      children: [
        {
          id: 3,
          name: '部门C',
          parentId: 1,
          children: [
            {
              id: 6,
              name: '部门F',
              parentId: 3
            }, {
              id: 16,
              name: '部门L',
              parentId: 3
            }
          ]
        },
        {
          id: 4,
          name: '部门D',
          parentId: 1,
          children: [
            {
              id: 8,
              name: '部门H',
              parentId: 4
            }
          ]
        }
      ]
    },
  ···
];

09/27 二面

基础八股:

  1. TCP为什么三次握手,为什么四次挥手
  2. 跨域解决什么问题,为什么script、img等标签还是可以跨域,只对ajax、dom等有跨域限制。(不太懂)
  3. HTTP缓存,强缓存和协商缓存分别节省了哪些东西。
  4. XSS防御方法、CSRF相关
  5. HTML语义化
  6. TS泛型,有什么作用
  7. 原型链,es6 class 的编译产物(两次了,看来这个一定得会)
  8. 垃圾回收机制,引用计数法、标记清楚法。

简历项目相关:

  1. 微前端作用及优势,spa 、mpa优缺点。为什么不用 iframe 而用 qiankun。微前端带来了哪些额外工作。
  2. webpack 插件相关。打包过程静态资源自动上传 cdn。
  3. 通用上传组件重构维护,分片上传并发控制。(这里扯了好久,问异步任务的并发控制有什么意义,不是真正的并发)应用场景、优化的效果等等。
  4. 反问。

感觉最后没答好,等结果了。

10/18 三面

自我介绍

没有八股和简历提问,主要聊了技术视野和对前端技术未来发展方向的探讨,以及为什么选前端、自身的一些特点等等。

泡池子

10/31 更新,状态从面试中变为等待面试结果

#前端面经#
全部评论
只有两轮技术面吗,哪个部门呀
4 回复 分享
发布于 2023-09-27 17:13 安徽
11
1 回复 分享
发布于 2024-03-08 01:07 山东
9-27里的问题2,实际考的是JSONP跨域。
1 回复 分享
发布于 2023-10-13 17:15 北京

相关推荐

09-03 11:48
已编辑
南京师范大学 Java
时间:36min岗位:测开问题:1.自我介绍2.实习介绍(只问了测试方向的,没问开发方向的)3.实习已经离职了吗?为什么离职了?没有转正机会吗?4.介绍大模型验证的流程?怎么配置节点的?怎么提效的?怎么mock数据的?自动化测试怎么弄的?5.整体大模型验证的效果怎么样?6.大模型验证包括具体识别的实体吗?对用户有哪些益处?7.大模型验证的流程编排平台每一个agent就一个画布吗?还是会在不同的版本中去选择?8.大模型验证如何去评测?一些大模型节点的prompt怎么去评估?(好像不是我们组做的)9.如何去补充某个场景的case?10.流程中有没有当前测试case的编写需要依赖上一个测试case的情况?(我们是分开写的)11.整个大模型的投入时间?手工运行时间减少了多少?12.Integer a = 98,int b = 98,==返回的结果?13.多线程创建的方式?14.MySql命令如何登录服务器?15.索引的作用?16.String str = new String("123") str new String "123"分别存放在哪里?17.常用的垃圾回收器?18.一个bug,如何发现是前端还是后端?19.TCP三次握手?20.hashmap的key是否唯一,如何做到的?21.测试用例设计,一个excel里面有两列,一列问题一列答案,导入系统的知识库里,设计测试用例?22.算法:一个字符串,子串由空格隔开,将每个子串的最后一个字符改成大写?23.反问
点赞 评论 收藏
分享
评论
5
42
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务