1424 字
7 分钟
other
other
1 文件上传
- 如果一个我们在做文件上传,你有看过这种文件上传的封装组件,它里边大概是怎么封装的吗?那分片上传你怎么去把那个文件拆片呢?具体是有什么原生方法吗?还是说用什么工具类可以把一个文件拆成小片?ok,那刚你提到 MD5 这种加密算法有什么特点?那除了你刚刚说的用 MD5 计算文件的 MD5,还有其他应用场景吗?
- 如果要你设计一个支持断点续传功能的上传功能,你要怎么去实现这个事情?那怎么保证每一个分片传的内容是对的?摘要算法除了 MD5 还有别的?
2 PDF 生成
- 我看你简历提到了”攻克前端复杂数据格式后 PDF 生成的一个难题”,遇到的难题是什么?先说 PDF 生成的问题。性能慢在哪里?你是怎么入手的?这里提到对于内容截断的判断是怎么实现的?那个数据可视化(表格性能)又是什么问题?不定高和合并单元格的问题,你是怎么解决的?有没有计算过这需要消耗多少性能?你怎么衡量你优化前后的效果?用什么指标?
- 你给我讲一下,你在前公司做的投入最大的一个事情。
- 那这个事情的话,你刚才说的,你是做了后端的 Node.js 的服务,还是说前端的开发都做了?
- 我换一个思路,这个场景我从前端的角度,直接通过前端的预览,然后通过浏览器本身另存为 PDF,其实也可以解决你的问题,我为什么要用你现在这个方案?
- (追问)我把它用前端技术屏蔽掉,或者我直接就打开一个纯粹的报告预览界面,然后有个打印。
- (继续追问)我这个方案(指前端预览页)能不能行得通?从技术角度是不是降低了很多工作量?
- 如果说是图表,你是什么保证它不会被(分页)隔开?
- 你怎么计算它的剩余空间呢?比如说一个表格的高度,它可能是根据你的行数来去决定你的高度。
- 这种分页需求是来自业务向你提的,还是你自己去根据 PDF 打印的这样一个标准去去做的?像这种我不太了解 PDF 这一块的东西,像这种是一个标准的做法吗?还是说还有其他更好的做法?那你这个转 PDF 用的还是(浏览器)基础的功能,对吧?
3 国际化
- 看到你项目中有一块国际化(i18n),你作为前端,在这个过程中做出了哪些设计?
- 你们之前的多语言有适配过哪些语种?多品牌。
- 那你们这一套动态的展示是怎么实现的呢?
- 我看你简历里面你还做过一些全球化改造…大概有 20 万行,中间是怎么保证不出那个质量问题?质量只能人工校对吗?那个成本不会很高吗?…有,比如说现在再重新回头看这个事情有什么提效的方式吗?那当时为什么不去先对这个支持做一下提升,就做一下改造?后面(国际化)是通过那个 AI 相关的一些事情,然后做一些辅助校验,辅助生成词条 key…这个具体可以讲一下是怎么做的?
- 针对时区这个标准化,到底哪里比较困难?通常做法是后端上报用 UTC,前端拿数据转换。我想知道你觉得难点在哪?
4 依赖注入
- 你们代码里面有没有分用这种模块化或者依赖注入这种方式?那你简单介绍一下,依赖注入这个东西,它到底可以解决什么样的问题?
5 拦截请求
- 我想拦截全局的那个接口请求,然后给它加一个 header,我们有什么办法去做这个需求?(补充:没有用 Axios,没有一个集中的地方去发请求,有些请求可能是在 NPM 包里面发的)
6 Session Token 处理
- 比如说在一个单页应用里面…请求 API 的时候是其实是需要带上一个 Session Token…这个 Session Token 随时都有可能失效…当碰到这个失效了,它就自动跳转到登录页面,完成登录之后跳转回来,你会怎么样实现这个功能?
7 轮询
- 你最后提到的轮询…你是如何去轮询后端接口的?(用哪个定时器 API?)
- 你用 setInterval 没有遇到过什么问题吗?如果接口请求失败,你也还会每 10 秒去轮询吗?
- 那现在交给你去优化,你觉得超出多少次数之后就不再重试了?
8 2D/3D 渲染
- 过往的开发经历中有没有做过 2D 或者 3D 渲染的?
- 那你能简单聊一下,我们前端技术里面,渲染 2D 或者 3D 的有哪些技术吗?
9 WebAssembly
- 有没有了解过那个 WebAssembly?
- 你怎么看?比如说像 WebAssembly 或者 Web GPU 这样的东西。
10 其他
- SEO 了不了解?
- 你有了解过 Angular 吗?
- 开发过 Vscode 插件?
- 你刚才提到那个插件,如果让你来独立开发成独立开发一个 IDE 的插件,你会去怎么做?在哪方面入手?