09 2020 档案

摘要:一、获取IP地址 获取流程如下 在浏览器缓存中查找,看是否有该url,有的话直接发起请求,否则下一步 在本地host文件查找,看是否有该url映射,有的话根据映射ip发起请求,否则下一步 向本地DNS服务器发起DNS查询请求,如果有对应IP返回,根据该ip发起请求,否则下一步 本地DNS服务器会向根 阅读全文
posted @ 2020-09-10 09:37 Walker-lyl 阅读(135) 评论(0) 推荐(0)
摘要:Promise封装 一、ES5 构造函数版 Promise对象 /** * promise封装 es5版本 */ function Mypromise (callback) { const _this = this this.value = undefined this.status = 'pend 阅读全文
posted @ 2020-09-07 19:13 Walker-lyl 阅读(536) 评论(0) 推荐(0)
摘要:一、防抖 debounce(频繁操作最后触发,避免频繁触发) 场景 1. 监听一个输入框,内容发生变化触发change事件,当我们在输入或者删除时会频繁触发change事件,中间这些触发时没必要的,只要当我们停止改变时触发一次change就可以 2. 监听滚动条,滚动条滚动触发scroll事件,当我 阅读全文
posted @ 2020-09-04 19:27 Walker-lyl 阅读(122) 评论(0) 推荐(0)
摘要:一、性能优化原则 1. 多使用内存、缓存或其他方法 2. 减少CPU计算量,减少网络加载耗时 3. 空间换时间(适用于所有编程的性能优化) 二、从何入手 1. 让加载更快 减少资源体积:图片、压缩代码 减少请求次数:合并代码、雪碧图、SSR服务器端渲染、缓存 使用更快的网络:CDN 2. 让渲染更快 阅读全文
posted @ 2020-09-04 18:33 Walker-lyl 阅读(196) 评论(0) 推荐(0)
摘要:一、为什么JS需要异步 JavaScript是单线程语言,同一时间只能做一件事,JS执行和DOM渲染公用一个线程,当JS执行时会阻塞DOM解析和DOM渲染。 当我们发出网络请求或者定时器任务,需要时间可能很长,这时候不能让页面卡住,因为可能会造成页面空白,让用户长时间的等待,这是极其影响用户体验的, 阅读全文
posted @ 2020-09-04 17:57 Walker-lyl 阅读(353) 评论(0) 推荐(0)
摘要:一、水平垂直居中 block块级元素 1.绝对定位 + 负marin(居中元素宽高固定且已知) HTML <div class="box"> <div class="box-item"></div> </div> CSS .box { position: relative; width: 250px 阅读全文
posted @ 2020-09-03 21:11 Walker-lyl 阅读(370) 评论(0) 推荐(0)
摘要:一、块级元素&行级元素是什么?常见的有哪些? 块级元素 特点: 自动占满整行,宽度默认是父容器100% 可设置宽高,可控 可以容纳块级元素和行内元素 常见的块级元素: <address>...</adderss> <center>...</center> 地址文字 <h1>...</h1> 标题一级 阅读全文
posted @ 2020-09-03 20:49 Walker-lyl 阅读(194) 评论(0) 推荐(0)