当前位置: 首页 > 面试经验 >

小米前端日常实习

优质
小牛编辑
80浏览
2023-12-15

小米前端日常实习

第一次面大厂居然是米子, 我的米

实习是在实习僧投的, 反馈很快, 下午打电话约的面试时间, 邮件确认

面试开始拷打项目, 问Vue框架相关的内容, 后面做手写题 ( 心累, 看了一下别人的面经, 猜测小米喜欢问JS基础多一点, 以为项目和框架问的较少, 结果JS基础没有怎么问...... 收到面试邀请的时候比较意外, 准备没有很充分 )

  1. 项目相关的
  2. 不用filter对数据如何进行筛选
  3. 向服务端发送请求用的什么工具
  4. 谁都可以向服务器发送请求吗?
  5. 什么是跨域?
  6. JSONP的工作原理是什么样的?
  7. 用CORS怎样解决跨域?
  8. 简单说一下Vue2的生命周期有哪些?
  9. keep-alive相关
  10. Vue 爷孙节点如何进行通信
  11. Vue学习时间有多久
  12. Vue2和Vue3之间发生的改变?
  13. Vue组件有个state多次在template中被用到, 如果改变了state10次, 页面渲染几次?
  14. 如何做到数据改变一次就渲染一次?
  15. 介绍一下TailwindCSS
  16. 浏览器打开多个窗口, 对同一个WebSocket地址进行连接能够同时得到数据吗?
  17. 问的差不多了, 开始做题: (没想到飞书的视频这么高级, 在桌面端能够直接弹窗让写代码, 窗口双方都可以编辑, 几乎没有代码提示)
  18. 使用CSS手写一个三角形, 这个小米考的比较多, 所以提前背了一下, 本来想多写几种的, 被打断施法说写一种就可以 .
  19. 面试官说: "既然你项目当中有树相关的内容, 那么就来写一个树的题目吧! ", (我内心狂喜, 刚刚才复习了BFS和DFS, 之前看同公司实习面经也有问到这个题, 这不直接拿下? ), 题目是使用JS将一个{"a.b.c": 123,"a.c": 456}形式的对象转换成一个嵌套的对象, 当时有点紧张, 面试官说树怎么怎么, 但是看示例输出没有node相关的结构, 然后当时就比较纠结是不是要判断已经存在的节点(脑子有点抽了), 而且连split方法也给忘记了, 寄. (题目简单还是下去实现了一下) (自己基础还是比较差, 关键时候想不起来)
  20. 反问, 互相了解
  21. 小米前端主要的工作是什么?
  22. 实习生工作的主要安排是什么?
  23. 实习的话, 学校那边如何安排?
  24. 期望的工作地点是哪里?
  25. 学习相关的

function transformInput(input) {
  const result = {};
  Object.keys(input).forEach((key) => {
    // 将对象的key进行拆分
    const splitKeys = key.split(".");
    let current = result;

    splitKeys.forEach((k, index) => {
      if (index === splitKeys.length - 1) {
        current[k] = input[key];
      } else {
        current[k] = current[k] || {};
        current = current[k];
      }
    });
  });
  return result;
}

// Example usage:
const input = {
  "a.b.c": 123,
  "a.c": 456,
};

const output = transformInput(input);
console.log(output);

 类似资料: