- 博客(14)
- 收藏
- 关注
原创 Websocket
websocket支持端对端通讯,建立TCP连接完成握手后,可以与服务端建立持久连接,服务端可以给客户端发送消息,客户端也可以给服务端发送消息。为什么会有websocket?http是请求-响应模式,请求在前,响应在后,这就导致了服务器无法主动发送消息给客户端。websocket适用场景:消息通知,直播间讨论区,聊天室,协同编辑。websocket缺点:兼容性(HTML5新增,不支持老浏览器);因为维持TCP连接需要耗费资源,所以不适用消息量少的场景,否则会造成资源浪费。
2024-05-11 15:17:39
289
1
原创 JavaScript 最长递增子序列
因为Vue3的原因,最长递增子序列在前端圈火了。身为菜鸟的我第一次听到这个词的时候,脑袋都懵了,这是个啥玩意儿?最长递增子序列(longest increasing subsequence)问题是指,在一个给定的数值序列中,找到一个子序列,使得这个子序列元素的数值依次递增,并且这个子序列的长度尽可能地大。最长递增子序列中的元素在原序列中不一定是连续的。例如,在给定数组 [4, 5, 1, 2, 7, 3, 6, 9, 0] 中,最长递增子序列是 1,2,3,6,9。
2024-05-07 22:46:55
445
2
原创 写一个Vite小插件
能不能在开发环境中,也使图片资源小于4M时,转换为base64,行为与生产环境保持一致呢?在vite中配置了打包图片优化,当图片资源小于4M时,会将图片转为base64。在开发环境,当图片资源小于阈值时,也将图片转换为base64。在开发环境中,图片依然是一个相对路径。
2024-05-07 22:45:33
283
原创 程序员英语
4、If + Present,will + verb(条件状语)Quote/double quote: 引号,双引号。3、If+Past,would+verb(虚拟语气)Single quote: 单引号。Semicolon:;Colon: : 冒号。
2023-12-07 10:40:50
374
原创 webpack和Babel面试题
在引用开发中影响不大,但如果是在开发库、工具时引入polyfill,则会有潜在问题。babel-runtime,将开发者依赖的全局内置对象,抽取成单独的模块,并通过模块导入的方式引入,避免了对全局作用域的修改。webpack处理好chunk文件后,最终会输出bundle文件,这个bundle文件包含了经过加载和编译的最终源文件,所以它可以直接在浏览器中运行。babel-polyfill会污染全局,Babel- runtime不会污染全局,如果是产出第三方lib要用babel-runtime。
2023-11-24 11:02:50
303
1
原创 Redux、React-Redux 及Redux中间件
Redux及React-Redux一、Redux、React-Redux 分别是什么?1)Redux 是 JavaScript 状态容器,提供可预测化的状态管理。由Flux演变而来。Redux 和 React 之间没有关系。Redux 支持 React、Angular、Ember、jQuery 甚至纯 JavaScript。2)React-Redux则是Redux提供的React绑定库,(有点类似Vuex专门服务Vue)需要另外安装依赖。二、Redux三大原则安装使用步骤
2021-10-23 10:35:31
329
原创 DOM面试题-DOM事件流、事件模型
面试题:你知道DOM事件有哪些级别吗?面试题:描述一下DOM事件模型和DOM事件流?面试题:描述一下DOM事件捕获的具体流程?面试题:Event对象有哪些常见应用?你知道什么是自定义事件吗?一、DOM事件级别DOM一共分为4个级别:DOM0级,DOM1级,DOM2和DOM3级。DOM事件一共分为3个级别:DOM0级事件处理,DOM2级事件处理,DOM3级事件处理。由于DOM1级并没有规定事件相关内容,所以没有DOM1级事件。1、DOM0级事件el.onclick=f.
2021-09-23 21:45:16
1910
原创 CSS常见面试题--水平垂直居中
面试题:水平垂直居中你知道几种方式?各有什么特点?方法一:绝对定位+负值margin法要点:1、已知子元素的宽高2、子元素绝对定位(top:50%,left:50%)3、子元素负值margin(margin-left,margin-top的负值各为子元素宽高的50%) <!-- 一、绝对定位+负值margin:已知父元素及子元素的宽高 --> <section id="absolute-minus-margin"> <style med..
2021-09-12 17:22:20
980
原创 CSS常见面试题--BFC
面试题:你知道什么是BFC吗?一、什么是BFC?BFC(Block Formatting Context)是块级格式化上下文的意思。它规定了元素如何对其它内容进行定位,以及与其它元素的关系及相互作用。二、BFC的原理是什么?属于同一个BFC的相邻两个盒子垂直方向会发生边距重叠 BFC区域不会和浮动元素区域发生重叠 BFC是页面上一个独立的容器,容器里的子元素不会影响到外面的元素,外面的元素也不会影响里面的子元素 计算BFC的高度时,浮动子元素也参与计算。三、如何形成BFC?flo
2021-09-12 17:09:19
288
原创 Node.js 基础
一、Node.js是什么?和浏览器端JS有什么区别?Node.js 是一个基于Chrome V8引擎的Javascript运行环境。使用了事件驱动,非阻塞式I/O模型。用于服务端的开发,例如数据库的访问,其它服务器的调用。优点及适用场景:处理高并发场景性能更佳。 Node.js擅长任务调度,善于I/O,不善于计算。 与webSocket配合,开发长连接的实时交互应用程序。缺点不适合CPU密集应用 可靠性不高,一旦代码某个环节崩溃,整个系统都崩溃。异同:浏览器和 Node.js
2021-07-22 23:32:48
307
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人