
总结
文章平均质量分 63
pg_li
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
微服务乾坤使用
1、安装乾坤npm i qiankun -S2、修改主应用主应用分为路由形式加载和手动加载俩种形式路由形式加载,在启动文件中增加启动代码,适合基于大面积替换子应用的场景,例如切换首页应用直接替换当前应用。registerMicroApps([ { name: 'stream-media', // app name registered entry: '//localhost:9001', // 加载应用地址 container: '...原创 2021-05-24 20:16:06 · 3166 阅读 · 2 评论 -
浏览器缓存
1、强缓存(本地缓存)浏览器方法请求前,会先去本地找,如果找到,直接读取本地缓存,不会在去请求服务器。否则进入协商缓存阶段。可通过报文头设置Cache-Control来配置强缓存状态。Cache-Control常用字段有1.1 no-store:所有内容都不缓存1.2 no-cache:缓存,在浏览器使用缓存前,会去请求服务器判断缓存资源是否是最新,有新的用新的。1.3 max-age=x(单位秒) 请求缓存后的X秒不再发起请求,优先级要比Expires高。1.4 s-maxa.原创 2020-12-28 14:22:49 · 137 阅读 · 0 评论 -
V8引擎学习
定义:V8是javaScript的执行环境,将javaScript编译成机器代码的一套环境主要包含:解析器(parser):将javaScript通过解析器生成AST解释器(Ignition):将AST生成可执行的字节码(biteCode)编译器(TurboFan):将字节码生成机器代码。1、函数只调用一次的化,不会生成机器代码,会在解释器阶段直接执行2、函数只生成未调用的化,不会生成AST3、函数被调用多次时,可能会标记为热点函数,被编译为性能跟高的机器代码(注意:机器代码原创 2020-12-28 10:38:47 · 166 阅读 · 0 评论 -
http和https 常见报文及加密
http:hash路径就是url中有个“#”号,“#”后面的hash值变换时不会导致浏览器重新发送请求,切hash变换会触发hashchange事件,可通过监听这个事件实现路由https:原创 2020-12-22 18:06:25 · 1385 阅读 · 0 评论 -
javaScript中Event Loop
概念是计算机的一种运行机制,用于等待和发送消息和事件。javaScript是单线程的,使用这种机制来解决单线程运行中的一些问题。主线程(调用栈)同步代码,一行一行执行。宏任务(消息队列)setTimeoutsetIntervalsetImmediate(node):把一些需要长时间运行的操作放在一个回调函数里,在浏览器完成后面的其他语句后,就立刻执行这个回调函数。I/O UI rendering:UI渲染进程微任务:Promiseprocess.next...原创 2020-12-21 11:26:07 · 194 阅读 · 0 评论 -
js原型和原型链的理解
/** * 在js这门语言中,一切都是对象,继承Object Function * 一个对象一旦创建(通过构造函数),就当是造一个盘古出来,开天辟地第一人。 * 盘古一旦出来,天生有神通。有一个prototype的属性神通。 * 这个prototype属性指向盘古的小宇宙(原型对象), * 也可以理解为prototype就是盘古的原型对象 * 但是呢这个小宇宙只要constuct属性...原创 2018-05-05 00:31:00 · 401 阅读 · 0 评论 -
js编译原理学习
一、编译原理词法分析将字符串分解成代码块(也叫词法单元)例如:var a = 2;被解析为var、a、=、2 、;。语法分析将词法单元流转换成抽象语法树(由元素逐级嵌套所组成的代表了程序语法 结构的树){ "type": "Program", "body": [ { "type": "VariableDeclaration", //变量声明 "declarations": [ { "type": "Vari..原创 2020-12-09 14:54:25 · 1639 阅读 · 0 评论 -
从输入URL后反生什么
一、DNS解析:将域名通过DNS解析出服务器地址浏览器缓存 系统缓存 路由器缓存二、TCP连接3次握手,建立连接 数据传输 4次挥手 断开连接三、发送请求请求方式 报文头 报文体四:服务器响应响应码 响应头 响应体五、渲染界面html解析 CSS解析 渲染树 布局渲染树 绘制渲染树1)回流 2)重绘补充、性能优化 js引擎...原创 2020-12-07 17:35:29 · 160 阅读 · 0 评论 -
d3选择器enter、exit、update
1、enter常用在批量创建元素,当查询的元素不足时,通过enter+append去动态创建跟data数据一致的元素ref.selectAll('circle') .data(path) .enter() .append('circle') .attr('r', 1) // 通过样式控制大小 .attr('class', `dynamic-canvas-circ.原创 2020-12-07 15:59:08 · 837 阅读 · 0 评论 -
Angular和React使用优劣势总结
一、Angular优点:1、文档齐全,各种api功能都有介绍。2、框架功能完整,数据交互HttpClient,路由管理@angular/router,数据管理有rxjs3、模块化管理,代码结构清晰。4、模板功能强大,自带各种指令。缺点:1、不够灵活,约束太强,体积较大二、React优势:1、比较轻量级,比较灵活,可以跟其他框架很好的融合2、生态完整,reduxreact-redux react-router-dom等很好的组合3、单数据流,虚拟dom使项目..原创 2020-12-07 15:11:26 · 889 阅读 · 0 评论 -
前端面试总结
js基础 性能优化 html css原创 2018-04-24 16:06:55 · 406 阅读 · 0 评论 -
rxjs学习笔记
1、常用合并列操作符zip: 拉链式组合 合并多个异步操作,当异步数据全部获取后,吐出数组,并一一对应concat: 操作拼接,将多个异步操作内容合并,当第一个异步数据subscribe后 会将结果一起传递给下一个异步操作,以此类推merge: 也是合并操作,单工作方式是先到先得,不区分位置,只要有数据就会推给下游。...原创 2020-12-04 15:00:53 · 233 阅读 · 0 评论 -
javaScript匿名函数、具名函数、IIFE
匿名函数:(function(){})一般会是IIFE使用,达到隔离作用域的目的但是有一定的缺陷1、调试追踪困难、可读性可维护性差2、如果需要引用自身,只能使用过期的arguments.callee【用于引用该函数的函数体内当前正在执行的函数,已从ES5严格模式中删除】引用且在事件监听处理中需要解除绑定具名函数:function test() {} 推荐使用IIFE:立即执行函数:function(){})();为了生成块级作用域,let关键值支持之前,只有全局作用域和函数作..原创 2020-07-16 21:11:37 · 382 阅读 · 0 评论 -
动态规划学习
1、算法图解背包问题有背包容量为4榜weight = [1, 2, 3, 4],有物品总量和价值分别为goods =[[1500, 3], [3000, 4], [2000, 3], [2000, 1]], 0位为价值,求怎么获取背包可容纳物品的最大价值,背包可不装满。 /** * 思路:构造一个算法图解二维表格 * 第一次循环时,将数组的第一行填充完,如果放不下 则填充为0 * 后续行数,将..原创 2020-05-09 10:37:05 · 254 阅读 · 1 评论 -
Promise总结
实例方法:then 调用then如果有返回值,返回的是一个新的Promise实例,隐藏可以使用链式写法,继续then下去 catch 异常捕获静态方法: all 将多个Promise实例转换成一个Promise实例,如果不是则先调用resolve将参数转换成Promise实例,所有的状态都变成Fulfilled,才会返回给回调,但是有一个Rejected就会返...原创 2020-03-17 10:34:55 · 1715 阅读 · 0 评论 -
前端加载性能优化总结
一、图片优化1、图片选择2、图片转base643、图片延迟加载4、缩略图、二、HTML结构优化三、CSS、js优化原创 2020-02-19 11:18:20 · 543 阅读 · 0 评论 -
可视化范围加载复习
1、定义监听函数,监听onscroll事件2、提前占位,并且能获取每个模块的高度3、判断是否在可视范围内,如果在,则加载<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> ...原创 2019-12-11 17:57:18 · 233 阅读 · 0 评论 -
前端数据绑定实现
VUE// VUEvar App = {};Object.defineProperty(App, 'test', {get : function(){//取值时触发console.log('get');},set : function(val){//赋值时触发,val可以是任意类型console.log('set',val)},//writable : false,//是...原创 2019-11-29 19:00:38 · 887 阅读 · 0 评论