# xmw-docs **Repository Path**: baiwumm/xmw-docs ## Basic Information - **Project Name**: xmw-docs - **Description**: 前端开发学习笔记,面试宝典、LeetCode算法、每日壹题 - **Primary Language**: TypeScript - **License**: Not specified - **Default Branch**: main - **Homepage**: https://docs.baiwumm.com/ - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-01-31 - **Last Updated**: 2024-05-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: vite, vitepress, TypeScript ## README # XmwDocs 前端开发学习笔记 如果觉得对你有帮助,动动小手指点个 `star` 吧 🌹🫡 ## 个人项目 1. [今日热榜](https://hot.baiwumm.com/) 2. [Xmw Admin](https://react.baiwumm.com) ## 面试宝典 ### Javascript 1. [数据类型](https://docs.baiwumm.com/interview-handbook/javascript/data-type) 2. [原型和原型链](https://docs.baiwumm.com/interview-handbook/javascript/prototype) 3. [闭包](https://docs.baiwumm.com/interview-handbook/javascript/closure) 4. [作用域和作用域链](https://docs.baiwumm.com/interview-handbook/javascript/scope) 5. [垃圾回收机制](https://docs.baiwumm.com/interview-handbook/javascript/garbage-collection) 6. [变量提升](https://docs.baiwumm.com/interview-handbook/javascript/variable-lifting) 7. [this 指向机制](https://docs.baiwumm.com/interview-handbook/javascript/this) 8. [事件循环(消息循环)](https://docs.baiwumm.com/interview-handbook/javascript/event-loop) 9. [JS 中的计时器能做到精确计时吗?](https://docs.baiwumm.com/interview-handbook/javascript/accurate-timing) 10. [如何理解 JS 的异步?](https://docs.baiwumm.com/interview-handbook/javascript/async) ### Vue 1. [MVVM 的理解](https://docs.baiwumm.com/interview-handbook/vue/mvvm) 2. [Vue3 和 Vue2 的区别](https://docs.baiwumm.com/interview-handbook/vue/difference-of-vue) 3. [key 的作用和工作原理](https://docs.baiwumm.com/interview-handbook/vue/key) ### React 1. [类组件生命周期](https://docs.baiwumm.com/interview-handbook/react/life-cycle) 2. [JSX 的理解](https://docs.baiwumm.com/interview-handbook/react/jsx) 3. [setState 函数做了哪些事情](https://docs.baiwumm.com/interview-handbook/react/set-state) 4. [为什么调用 setState 而不是直接改变 state](https://docs.baiwumm.com/interview-handbook/react/why-state) ### 算法篇 1. [冒泡排序](https://docs.baiwumm.com/interview-handbook/algorithm/bubble-sort) 2. [选择排序](https://docs.baiwumm.com/interview-handbook/algorithm/selection-sort) 3. [插入排序](https://docs.baiwumm.com/interview-handbook/algorithm/insertion-sort) 4. [归并排序](https://docs.baiwumm.com/interview-handbook/algorithm/merge-sort) 5. [快速排序](https://docs.baiwumm.com/interview-handbook/algorithm/quick-sort) 6. [二分搜索](https://docs.baiwumm.com/interview-handbook/algorithm/binaly-search) ### 浏览器篇 1. [浏览器进程模型](https://docs.baiwumm.com/interview-handbook/browser/process-model) 2. [如何解决跨域](https://docs.baiwumm.com/interview-handbook/browser/cross-domain) 3. [浏览器缓存](https://docs.baiwumm.com/interview-handbook/browser/cache) 4. [XSS 跨站脚本攻击](https://docs.baiwumm.com/interview-handbook/browser/xss) 5. [CSRF 跨站请求伪造](https://docs.baiwumm.com/interview-handbook/browser/csrf) 6. [输入 url 会发生什么](https://docs.baiwumm.com/interview-handbook/browser/url) 7. [cookie 和 session 的区别](https://docs.baiwumm.com/interview-handbook/browser/cookie-and-session) 8. [cookie、sessionStorage 和 localStorage 的区别](https://docs.baiwumm.com/interview-handbook/browser/cookie-and-storage) 9. [http1.0、http1.1、http2.0 协议的区别](https://docs.baiwumm.com/interview-handbook/browser/http) 10. [为什么 HTTP1.1 不能实现多路复用](https://docs.baiwumm.com/interview-handbook/browser/http1-1-multiplexing) 11. [简单讲解一下 HTTP2 的多路复用](https://docs.baiwumm.com/interview-handbook/browser/http2-multiplexing) 12. [http1.1 是如何复用 tcp 连接的?](https://docs.baiwumm.com/interview-handbook/browser/http1-1-tcp) 13. [http1.0、http2.0、http3.0 之间的区别](https://docs.baiwumm.com/interview-handbook/browser/http-difference) ## LeetCode 算法 ### 简单 1. [两数之和](https://docs.baiwumm.com/algorithm/ease/sum-of-two-numbers) 2. [回文数](https://docs.baiwumm.com/algorithm/ease/palindromic-number) 3. [最长公共前缀](https://docs.baiwumm.com/algorithm/ease/longest-common-prefix) 4. [罗马数字转整数](https://docs.baiwumm.com/algorithm/ease/roman-to-numbers) ### 中等 1. [整数反转](https://docs.baiwumm.com/algorithm/intermediate/integer-inversion) 2. [两数相加](https://docs.baiwumm.com/algorithm/intermediate/add-two-numbers) ### 困难 1. [寻找两个正序数组的中位数](https://docs.baiwumm.com/algorithm/hard/ordinal-group-median) ## 每日壹题 1. 第 1 题:[写 React / Vue 项目时为什么要在列表组件中写 key,其作用是什么?](https://docs.baiwumm.com/daily-question/1) 2. 第 2 题:[['1', '2', '3'].map(parseInt) what & why ?](https://docs.baiwumm.com/daily-question/2) 3. 第 3 题:[什么是防抖和节流?有什么区别?如何实现?](https://docs.baiwumm.com/daily-question/3) 4. 第 4 题:[介绍下 Set、Map、WeakSet 和 WeakMap 的区别?](https://docs.baiwumm.com/daily-question/4) 5. 第 5 题:[介绍下深度优先遍历和广度优先遍历,如何实现?](https://docs.baiwumm.com/daily-question/5) 6. 第 6 题:[请分别用深度优先思想和广度优先思想实现一个拷贝函数?](https://docs.baiwumm.com/daily-question/6) 7. 第 7 题:[ES5/ES6 的继承除了写法以外还有什么区别?](https://docs.baiwumm.com/daily-question/7) 8. 第 8 题:[setTimeout、Promise、Async/Await 的区别](https://docs.baiwumm.com/daily-question/8) 9. 第 9 题:[Async/Await 如何通过同步的方式实现异步](https://docs.baiwumm.com/daily-question/9) 10. 第 10 题:[常见异步笔试题,请写出代码的运行结果](https://docs.baiwumm.com/daily-question/10) 11. 第 11 题:[将数组扁平化并去除其中重复数据,最终得到一个升序且不重复的数组](https://docs.baiwumm.com/daily-question/11) 12. 第 12 题:[JS 异步解决方案的发展历程以及优缺点](https://docs.baiwumm.com/daily-question/12) 13. 第 13 题:[Promise 构造函数是同步执行还是异步执行,那么 then 方法呢?](https://docs.baiwumm.com/daily-question/13) 14. 第 14 题:[情人节福利题,如何实现一个 new](https://docs.baiwumm.com/daily-question/14) 15. 第 15 题:[简单讲解一下 http2 的多路复用](https://docs.baiwumm.com/daily-question/15) 16. 第 16 题:[谈谈你对 TCP 三次握手和四次挥手的理解](https://docs.baiwumm.com/daily-question/16) 17. 第 17 题:[A、B 机器正常连接后,B 机器突然重启,问 A 此时处于 TCP 什么状态](https://docs.baiwumm.com/daily-question/17) 18. 第 18 题:[React 中 setState 什么时候是同步的,什么时候是异步的?](https://docs.baiwumm.com/daily-question/18) 19. 第 19 题:[React setState 笔试题,下面的代码输出什么?](https://docs.baiwumm.com/daily-question/19) 20. 第 20 题:[介绍下 npm 模块安装机制,为什么输入 npm install 就可以自动安装对应的模块?](https://docs.baiwumm.com/daily-question/20) 21. 第 21 题:[有以下 3 个判断数组的方法,请分别介绍它们之间的区别和优劣 Object.prototype.toString.call() 、 instanceof 以及 Array.isArray()](https://docs.baiwumm.com/daily-question/21) 22. 第 22 题:[介绍下重绘和回流(Repaint & Reflow),以及如何进行优化](https://docs.baiwumm.com/daily-question/22) 23. 第 23 题:[介绍下观察者模式和订阅-发布模式的区别,各自适用于什么场景](https://docs.baiwumm.com/daily-question/23) 24. 第 24 题:[聊聊 Redux 和 Vuex 的设计思想](https://docs.baiwumm.com/daily-question/24) 25. 第 25 题:[浏览器和 Node 事件循环的区别](https://docs.baiwumm.com/daily-question/25) 26. 第 26 题:[介绍模块化发展历程](https://docs.baiwumm.com/daily-question/26) 27. 第 27 题:[关于 const 和 let 声明的变量不在 window 上](https://docs.baiwumm.com/daily-question/27) 28. 第 28 题:[cookie 和 token 都存放在 header 中,为什么不会劫持 token?](https://docs.baiwumm.com/daily-question/28) 29. 第 29 题:[聊聊 Vue 的双向数据绑定,Model 如何改变 View,View 又是如何改变 Model 的](https://docs.baiwumm.com/daily-question/29) 30. 第 30 题:[请把俩个数组 [A1, A2, B1, B2, C1, C2, D1, D2] 和 [A, B, C, D],合并为 [A1, A2, A, B1, B2, B, C1, C2, C, D1, D2, D]](https://docs.baiwumm.com/daily-question/30) 31. 第 31 题:[改造下面的代码,使之输出 0 - 9,写出你能想到的所有解法。](https://docs.baiwumm.com/daily-question/31) 32. 第 32 题:[Virtual DOM 真的比操作原生 DOM 快吗?谈谈你的想法。](https://docs.baiwumm.com/daily-question/32) 33. 第 33 题:[下面的代码打印什么内容,为什么?](https://docs.baiwumm.com/daily-question/33) 34. 第 34 题:[简单改造下面的代码,使之分别打印 10 和 20。](https://docs.baiwumm.com/daily-question/34) 35. 第 35 题:[请求时浏览器缓存 from memory cache 和 from disk cache 的依据是什么,哪些数据什么时候存放在 Memory Cache 和 Disk Cache中?](https://docs.baiwumm.com/daily-question/35) 36. 第 36 题:[使用迭代的方式实现 flatten 函数。](https://docs.baiwumm.com/daily-question/36)