前端小知识点扫盲笔记记录4

简介: 前端小知识点扫盲笔记记录4

url参数解析成一个对象

```




Document


```


weakMap

```




WeakMap


```


weakMap的应用

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>weakMap</title> </head> <body> <script> //ES6语法 利用weakMap避免内存泄露 const oBtn1 = document.querySelector('#btn1'); const oBtn2 = document.querySelector('#btn2'); const oBtnMap = new WeakMap(); //弱引用 oBtnMap.set(oBtn1, handleBtn1Click); oBtnMap.set(oBtn2, handleBtn2Click); oBtn1.addEventListener('click', oBtnMap.get(oBtn1), false); oBtn2.addEventListener('click', oBtnMap.get(oBtn2), false); function handleBtn1Click() {} function handleBtn2Click() {} oBtn1.remove(); oBtn2.remove(); </script> </body> </html>


webpackload和plugin区别

loader: loader从字面的意思理解,是 加载 的意思。 由于webpack 本身只能打包commonjs规范的js文件,所以,针对css,图片等格式的文件没法打包,就需要引入第三方的模块进行打包。 loader虽然是扩展了 webpack ,但是它只专注于转化文件(transform)这一个领域,完成压缩,打包,语言翻译。loader是运行在NodeJS中。 仅仅只是为了打包,仅仅只是为了打包,仅仅只是为了打包,重要的话说三遍! 如:css-loader和style-loader模块是为了打包css的 babel-loader和babel-core模块时为了把ES6的代码转成ES5 url-loader和file-loader是把图片进行打包的。 plugin是做什么的 plugin完成的是loader不能完成的功能,这是废话,没有说清楚。 plugin也是为了扩展webpack的功能,但是 plugin 是作用于webpack本身上的。而且plugin不仅只局限在打包, 资源的加载上,它的功能要更加丰富。从打包优化和压缩,到重新定义环境变量,功能强大到可以用来处理各种各样的任务。webpack提供了很多开箱即用的插件: CommonChunkPlugin主要用于提取第三方库和公共模块,避免首屏加载的bundle文件,或者按需加载的bundle文件体积过大,导致加载时间过长,是一把优化的利器。而在多页面应用中, 更是能够为每个页面间的应用程序共享代码创建bundle。 插件可以携带参数,所以在plugins属性传入new实例。


三次握手

第一次握手:客户端给服务端发一个 SYN 报文,并指明客户端的初始化序列号 ISN(c)。此时客户端处于 SYNSEND 状态。 首部的同步位SYN=1,初始序号seq=x,SYN=1的报文段不能携带数据,但要消耗掉一个序号。 第二次握手:服务器收到客户端的 SYN 报文之后,会以自己的 SYN 报文作为应答,并且也是指定了自己的初始化序列号 ISN(s)。同时会把客户端的 ISN + 1 作为ACK 的值,表示自己已经收到了客户端的 SYN,此时服务器处于 SYNRCVD 的状态。 在确认报文段中SYN=1,ACK=1,确认号ack=x+1,初始序号seq=y。 第三次握手:客户端收到 SYN 报文之后,会发送一个 ACK 报文,当然,也是一样把服务器的 ISN + 1 作为 ACK 的值,表示已经收到了服务端的 SYN 报文,此时客户端处于 ESTABLISHED 状态。服务器收到 ACK 报文之后,也处于 ESTABLISHED 状态,此时,双方已建立起了连接。 确认报文段ACK=1,确认号ack=y+1,序号seq=x+1(初始为seq=x,第二个报文段所以要+1),ACK报文段可以携带数据,不携带数据则不消耗序号


不使用代理模式预加载图片

```




不使用代理模式预加载图片


```


事件冒泡

```




事件冒泡


<body>
    <!-- 开始时由最具体的元素接收,然后逐级向上传播到到 DOM 最顶层节点。 -->
    <div class="father">
        <div class="son">son</div>
    </div>
    <script>
        // 常见事件对象的属性和方法
        // 阻止冒泡  dom 推荐的标准 stopPropagation()
        var son = document.querySelector('.son')
        son.addEventListener(
            'click',
            function (e) {
                console.log('son')
                e.stopPropagation() // stop 停止  Propagation 传播
                e.cancelBubble = true // 非标准 cancel 取消 bubble 泡泡
            },
            false
        )
        var father = document.querySelector('.father')
        father.addEventListener(
            'click',
            function () {
                console.log('father')
            },
            false
        )
        document.addEventListener('click', function () {
            console.log('document')
        })
        //只打印出son
    </script>
</body>





总结

我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注前端小歌谣学习前端知识


相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务&nbsp;ACK 容器服务&nbsp;Kubernetes&nbsp;版(简称&nbsp;ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情:&nbsp;https://www.aliyun.com/product/kubernetes
相关文章
|
3月前
|
Web App开发 缓存 前端开发
前端性能优化的整理笔记(一)
前端性能优化的整理笔记(一)
106 0
|
10天前
|
移动开发 前端开发 JavaScript
CSS选择器 前端开发入门笔记(十)
CSS选择器 前端开发入门笔记(十)
19 1
|
10天前
|
前端开发 搜索推荐 数据安全/隐私保护
HTML标签详解 HTML5+CSS3+移动web 前端开发入门笔记(四)
HTML标签详解 HTML5+CSS3+移动web 前端开发入门笔记(四)
18 1
|
3月前
|
安全 前端开发 JavaScript
【利用AI让知识体系化】前端安全攻防知识点(二)
【利用AI让知识体系化】前端安全攻防知识点
|
3月前
|
存储 前端开发 安全
【利用AI让知识体系化】前端安全攻防知识点(一)
【利用AI让知识体系化】前端安全攻防知识点
|
3月前
|
前端开发 JavaScript 应用服务中间件
WEB前端有必要学会docker吗?0基础-45分钟带你学会(包含视频笔记案例源代码)
WEB前端有必要学会docker吗?0基础-45分钟带你学会(包含视频笔记案例源代码)
30 0
|
3月前
|
前端开发 JavaScript API
【前端】Vue3知识点合集
【前端】Vue3知识点合集
64 0
【前端】Vue3知识点合集
|
3月前
|
缓存 JavaScript 前端开发
【前端】Vue2知识点大全!
【前端】Vue2知识点大全!
141 1
【前端】Vue2知识点大全!
|
3月前
|
存储 缓存 前端开发
面试官常问的一些初中级前端知识点
面试官常问的一些初中级前端知识点
|
3月前
|
缓存 前端开发 JavaScript
前端性能优化的整理笔记(二)
前端性能优化的整理笔记(二)