时间:8 月 25 号
项目
- CSS 的预编译语言 SASS,为什么会出现 SASS,它有些什么特性。
- SASS 是怎么编译成 CSS的,过程。
- 项目的整个开发过程都遇到了哪些问题:
- MongoDB 与 MySQL,索引有什么作用。
- Nginx 在项目中是一个什么样的作用(静态资源管理?)。
- 为什么不用 history 模式,你知道 history 模式的 404 问题吗?为什么出现 404,怎样解决。
八股
- 浮点数问题:0.1 + 0.2 !== 0.3 为什么,怎么解决?你知道 Java 有一个 Decimal 吗?JS 提供了 BigInt。
- 如果一个浮点数,比如 68.2 * 100,还会出现浮点数问题吗?(会,只要是浮点数就会有问题)
- 如果让你实现 BigInt 之间的运算,你会怎么做(字符串+位运算)。
- 讲一下 Promise:
- 如果要实现多个异步并发请求,等这些请求回来之后再做另外一个请求,应该怎样实现?(Promise.all)
- 场景:有一个下拉框,选择项是比如说是 1~6 的数字,每点一下下拉框中的数字就发起一个异步请求并根据响应的数据渲染页面,这里面都有哪些坑,怎样解决?
- 坑 1:如果点了几个选项,会有几个异步请求发出去,那么无法确定哪个异步请求先响应,渲染的顺序无法控制。(取消上一次的异步请求)
- 坑 2:如果用户连续点很多选项,有太多的异步请求发出去,实际上我们只需要渲染其中一个就可以了。(节流处理)
- 怎样避免 CSS 的样式冲突?
- 讲一下 JWT:
- session、cookie 实现单点登录(业界用得多,JWT 用得少)。
- 一个域名下的两个子域名服务器实现单点登录,用户 session+cookie的方案怎样实现?
- HTTP 与 HTTPS,解释一下这个 S:
- 为什么最后要用对称加密?
- 为什么抓包工具可以看到 HTTPS 中的数据?
- CA 证书的层次结构?
其他
- ES6 代码的兼容处理 — Babel 的原理。
- service woker,缓存的操作。
- 怎样选择合适的图片编码格式(SVG、webp)。
手写题
发布-订阅模式。
面试官根据你的回答来进行提问,一般都是你回答了,从你的回答里挑关键字然后进一步提问,循序渐进,直到问趴你。开放性思考的问题比较多,比一般的面试更灵活。
9 月 2 日更新,目前还是官网的状态仍然是面试中,没有约二面,估计凉了。
9 月 14 日更新,已经凉凉,勿念。
#网易雷火##23届秋招笔面经##前端面经#