摘要:        
三个方面: 网络篇: 构建请求 查找强缓存 DNS解析 建立TCP连接(三次握手) 发送HTTP请求(网络请求后网络响应) 浏览器解析篇: 解析html构建DOM树 解析css构建CSS树、样式计算 生成布局树(Layout Tree) 浏览器渲染篇: 建立图层树(Layer Tree) 生成绘制列    阅读全文
posted @ 2021-11-01 15:05
Dz&Ying
阅读(27)
评论(0)
推荐(0)
        
            
        
        
摘要:        
编码阶段尽量减少data中的数据,data中的数据都会增加getter和setter,会收集对应的watcherv-if和v-for不能连用如果需要使用v-for给每项元素绑定事件时使用事件代理SPA 页面采用keep-alive缓存组件在更多的情况下,使用v-if替代v-showkey保证唯一使用    阅读全文
posted @ 2021-11-01 14:57
Dz&Ying
阅读(34)
评论(0)
推荐(0)
        
            
        
        
摘要:        
当一个Vue实例创建时,Vue会遍历data选项的属性,用 Object.defineProperty 将它们转为 getter/setter并且在内部追踪相关依赖,在属性被访问和修改时通知变化。 每个组件实例都有相应的 watcher 程序实例,它会在组件渲染的过程中把属性记录为依赖,之后当依赖项    阅读全文
posted @ 2021-11-01 14:49
Dz&Ying
阅读(167)
评论(0)
推荐(0)
        
            
        
        
摘要:        
key的作用主要是为了更高效的对比虚拟DOM中每个节点是否是相同节点; Vue在patch过程中判断两个节点是否是相同节点,key是一个必要条件,渲染一组列表时,key往往是唯一标识,所以如果不定义key的话,Vue只能认为比较的两个节点是同一个,哪怕它们实际上不是,这导致了频繁更新元素,使得整个p    阅读全文
posted @ 2021-11-01 14:20
Dz&Ying
阅读(2074)
评论(0)
推荐(0)
        
            
        
        
摘要:        
JS是单线程的,为了防止一个函数执行时间过长阻塞后面的代码, 所以会先将同步代码压入执行栈中,依次执行,将异步代码推入异步队列, 异步队列又分为宏任务队列和微任务队列,因为宏任务队列的执行时间较长,所以微任务队列要优先于宏任务队列。 微任务队列的代表就是,Promise.then、MutationO    阅读全文
posted @ 2021-11-01 14:16
Dz&Ying
阅读(36)
评论(0)
推荐(0)
        
            
        
        
摘要:        
事件冒泡 (向上寻找事件方法执行) 指在在一个对象上触发某类事件,如果此对象绑定了事件,就会触发事件,如果没有,就会向这个对象的父级对象传播,最终父级对象触发了事件。 事件委托 (由父节点的监听函数统一处理多个子元素的事件) 本质上是利用了浏览器事件冒泡的机制。 因为事件在冒泡过程中会上传到父节点,    阅读全文
posted @ 2021-11-01 13:44
Dz&Ying
阅读(87)
评论(0)
推荐(0)
        
            
        
        
摘要:        
ajax是一种异步通信的方法,从服务端获取数据,达到局部刷新页面的效果 创建XMLHttpRequest对象; 调用open方法传入三个参数 请求方式(GET/POST)、url、同步异步(true/false); 监听onreadystatechange事件,当readystate等于4时返回re    阅读全文
posted @ 2021-11-01 13:39
Dz&Ying
阅读(29)
评论(0)
推荐(0)
        
            
        
        
摘要:        
[...XXX] 对set的使用 const removeDuplicates = (arr) => [...new Set(arr)]; console.log(removeDuplicates([1, 2, 3, 3, 4, 4, 5, 5, 6])); // Result: [ 1, 2, 3    阅读全文
posted @ 2021-11-01 10:09
Dz&Ying
阅读(583)
评论(0)
推荐(0)
        
            
        
        
摘要:        
传递 window.location 或原始 URL值 goole.com?search=easy&page=3 从 url 轻松检索查询参数 const getParameters = (URL) => { URL = JSON.parse('{"' + decodeURI(URL.split("    阅读全文
posted @ 2021-11-01 10:00
Dz&Ying
阅读(65)
评论(0)
推荐(0)
        
            
        
        
摘要:        
使用getSelectionproperty const getSelectedText = () => window.getSelection().toString(); getSelectedText();    阅读全文
posted @ 2021-11-01 09:58
Dz&Ying
阅读(218)
评论(0)
推荐(0)
        
            
        
        
摘要:        
检查数组是否为空,返回 true 或 false。 const isNotEmpty = arr => Array.isArray(arr) && arr.length > 0; isNotEmpty([1, 2, 3]); // Result: true    阅读全文
posted @ 2021-11-01 09:56
Dz&Ying
阅读(73)
评论(0)
推荐(0)
        
            
        
        
摘要:        
const isDateValid = (...val) => !Number.isNaN(new Date(...val).valueOf()); isDateValid('2021-10-10') isDateValid('Mon Nov 01 2021 09:49:48 GMT+0800 (中    阅读全文
posted @ 2021-11-01 09:54
Dz&Ying
阅读(36)
评论(0)
推荐(0)
        
            
        
        
摘要:        
使用 navigator.clipboard.writeText 轻松将任何文本复制到剪贴板。 const copyToClipboard = (text) => navigator.clipboard.writeText(text); copyToClipboard("需要的文本");    阅读全文
posted @ 2021-11-01 09:21
Dz&Ying
阅读(243)
评论(0)
推荐(0)
        
                    
                
浙公网安备 33010602011771号