![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端
文章平均质量分 67
虫洞空间
十年可见春去秋来,百年可证生老病死,千年可叹王朝更替,万年可见斗转星移。
展开
-
浏览器跨域
浏览器有一个重要的安全策略,称之为「同源策略」其中,源=协议+主机+端口源=协议+主机+端口源=协议+主机+端口,两个源相同,称之为同源,两个源不同,称之为跨源或跨域。原创 2022-06-27 09:41:06 · 129 阅读 · 1 评论 -
JWT令牌
jwt本质上是一种令牌格式。它和终端设备无关,同样和服务器无关,甚至与如何传输无关,它只是规范了令牌的格式而已;jwt由三部分组成:header、payload、signature。主体信息在payload,jwt难以被篡改和伪造。这是因为有第三部分的签名存在。...原创 2022-06-27 09:34:07 · 699 阅读 · 0 评论 -
五层网络模型
分层的意义当遇到一个复杂问题的时候,可以使用分层的思想把问题简单化比如,你有半杯82年的可乐,想分享给你的朋友王富贵,但你们已经10年没有联系了。要完成这件事,你可能要考虑:我用什么装可乐?可能的方案:塑料瓶、玻璃瓶、煤气罐怎么保证可乐始终处于低温?可能的方案:保温杯、小冰箱、冰盒如何保证可乐不被运输的人偷喝?可能的方案:封条、在上面写「毒药」如何获取王富贵的地址?可能的方案:报案失踪、联系私人侦探、联系物流公司的朋友如何运输?可能的方案:自行车、汽车、火车、高铁原创 2022-05-02 00:14:03 · 7089 阅读 · 1 评论 -
ES6模块化与CommonJS模块化
阐述模块化(非ES6模块化)应用到浏览器端需要解决哪些问题,如何解决?浏览器端实现模块化需要解决两个问题:a. 浏览器读取JS文件是异步,如何使用异步的方式获取一个模块b. 如何避免模块中的全局代码污染全局变量针对第一个问题,可以使用回调或Promise的方式解决针对第二个问题,可以手动的将模块放入到函数环境中,避免全局变量的污染ES6模块化和CommonJS模块化有哪些区别?a. CommonJS是依赖延迟声明,ES6是依赖预声明b. CommonJS最终只能依靠module.expo原创 2022-03-02 13:18:32 · 145 阅读 · 0 评论 -
webpack 编译过程
文章目录初始化编译输出总过程webpack 的作用是将源代码编译(构建、打包)成最终代码整个过程大致分为三个步骤初始化编译输出初始化此阶段,webpack会将CLI参数、配置文件、默认配置进行融合,形成一个最终的配置对象。对配置的处理过程是依托一个第三方库yargs完成的此阶段相对比较简单,主要是为接下来的编译阶段做必要的准备目前,可以简单的理解为,初始化阶段主要用于产生一个最终的配置编译创建chunkchunk是webpack在内部构建过程中的一个概念,译为块,它表示原创 2022-02-23 19:21:22 · 359 阅读 · 0 评论 -
webpack对模块化的兼容性
由于webpack同时支持CommonJS和ES6 module,因此需要理解它们互操作时webpack是如何处理的同模块化标准如果导出和导入使用的是同一种模块化标准,打包后的效果和之前学习的模块化没有任何差异不同模块化标准不同的模块化标准,webpack按照如下的方式处理最佳实践代码编写最忌讳的是精神分裂,选择一个合适的模块化标准,然后贯彻整个开发阶段。...原创 2022-02-23 19:15:00 · 238 阅读 · 0 评论 -
如何在浏览器端实现模块化
文章目录webpack简介浏览器端的模块化根本原因解决办法常见的构建工具webpack简介webpack使用层面很简单,但原理层面非常复杂webpack生态圈极其繁荣,有海量的第三方库可以融入到webpack浏览器端的模块化问题:效率问题:精细的模块划分带来了更多的JS文件,更多的JS文件带来了更多的请求,降低了页面访问效率兼容性问题:浏览器目前仅支持ES6的模块化标准,并且还存在兼容性问题工具问题:浏览器不支持npm下载的第三方包这些仅仅是前端工程化的一个缩影当开发一个具有规模原创 2022-02-23 15:52:21 · 409 阅读 · 0 评论