途虎养车 - 前端 - 秋招 - 一面

  1. 项目经历,useRequest是怎么设计的
  2. 插件体系是怎么实现的
  3. Hooks和普通的函数之间的区别
  4. 防抖节流
  5. 实习经历,联动搜索框怎么复用
  6. setState,这个回去好好看看
  7. Vue3的Hook和React Hook的区别
  8. Vue3中怎么使用生命周期
  9. 同步和异步的概念
  10. JS异步任务有哪些
  11. 浏览器缓存
  12. interface和type的区别
  13. 手写题,计算菜单路径(面包屑)
function calculateBreadcrumbPath(menuList, currentPage) {
  let path = [];
  for (let item of menuList) {
    if (item.name === currentPage) {
      path.push(item.name);
      break;
    }
    if (item.children) {
      let subPath = calculateBreadcrumbPath(item.children, currentPage);
      if (subPath.length > 0) {
        path.push(item.name);
        path = path.concat(subPath);
        break;
      }
    }
  }
  return path;
}

let menuList = [
  {
    name: '管理',
    children: [
      {
        name: '列表',
        children: [
          { name: '用户详情' },
          { name: '权限列表' }
        ]
      }
    ]
  }
];
let currentPage = '用户详情';
console.log(calculateBreadcrumbPath(menuList, currentPage)); 
#软件开发笔面经#
全部评论
佬你什么时候面的
点赞 回复 分享
发布于 09-25 08:37 上海
佬,你这是偏向于react吗
点赞 回复 分享
发布于 09-25 15:11 江苏
佬儿你什么时侯投的简历,我简历泡池子泡两周了
点赞 回复 分享
发布于 09-28 21:05 河南
佬你这个有后续吗
点赞 回复 分享
发布于 09-28 23:09 上海

相关推荐

Webpack的Tree Shaking是一个用于删除代码中未被引用的未使用代码的优化技术。它可以显著减小打包后的文件体积,提高网页加载速度。要配置Webpack实现代码的无用代码剔除,需要进行以下几个步骤:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=fffb9e7b5576495f90d9596c40989b9f确保你的代码是使用ES6模块语法编写的,而不是CommonJS(require)语法。因为Tree Shaking只对ES6模块有效。在Webpack配置文件中,通过设置mode为production,启用Webpack的生产模式,此时Tree Shaking功能会默认开启。确保你的package.json文件中的sideEffects字段被正确配置。sideEffects字段告诉Webpack哪些文件是没有副作用的,可以进行Tree Shaking。如果你的应用是纯粹的JavaScript应用,可以将sideEffects设置为"sideEffects": false。如果你的应用使用了一些有副作用的模块(例如CSS文件),你需要将这些模块添加到sideEffects字段中。这样Webpack就不会将这些有副作用的模块进行Tree Shaking。需要注意的是,Tree Shaking只适用于ES6模块语法,并且只能剔除未引用的代码,不能剔除被动态引用的代码(例如通过字符串拼接生成模块路径)。另外,一些特定的代码结构可能会导致Tree Shaking失效,例如使用eval、with等特殊语法。配置完成后,运行Webpack打包构建,未被引用的代码将会被删除,从而减小文件体积。
2024-11-03
在牛客打卡264天,今天也很努力鸭!
点赞 评论 收藏
分享
4 7 评论
分享
牛客网
牛客企业服务