摘要:
什么是深度优先和广度优先 其实简单来说 深度优先就是自上而下的遍历搜索 广度优先则是逐层遍历, 如下图所示 深度优先 广度优先 两者的区别 对于算法来说 无非就是时间换空间 空间换时间 深度优先不需要记住所有的节点, 所以占用空间小, 而广度优先需要先记录所有的节点占用空间大 深度优先有回溯的操作( 阅读全文
摘要:
diff算法 虚拟 dom 虚拟DOM(Virtual DOM)是对DOM的JS抽象表示,它们是JS对象,能够描述DOM结构和关系。应用的各种状态变化会作用于虚拟DOM,最终映射到DOM上。 优点 虚拟DOM轻量、快速:当它们发生变化时通过新旧虚拟DOM比对可以得到最小DOM操作量,从而提升性能 p 阅读全文
摘要:
解决方法以管理员身份运行 VSCode;执行:get-ExecutionPolicy,如果返回 Restricted,表示状态是禁止的;执行:set-ExecutionPolicy RemoteSigned;最后执行 get-ExecutionPolicy,会返回 RemoteSigned;最后再尝 阅读全文
摘要:
二、基本概念 常常听到算法的时候,就会有人说到 时间复杂度, 空间复杂度。那么这俩玩意是啥呢,下面我就来一一解释 1. 时间复杂度 其实就是一个函数,用大 O 表示, 比如 O(1)、 O(n)... 它的作用就是用来定义描述算法的运行时间 2. 空间复杂度 和时间复杂度一样,空间复杂度也是用大 O 阅读全文
摘要:
CSS属性操作: 指的是通过JavaScript来操作一个元素的CSS样式 获取CSS属性值: getComputedStyle(obj).attr / getComputedStyle(obj)['attr'] 两种写法一样 attr表示css属性名,但必须写成驼峰型,如font-size应该写成 阅读全文
摘要:
https://www.cnblogs.com/caijinghong/p/15659481.html 配合这篇来看更加详细 内容是:从浏览器进程,再到浏览器内核运行,再到JS引擎单线程,再到JS事件循环机制,从头到尾系统的梳理一遍,摆脱碎片化,形成一个知识体系 目标是:看完这篇文章后,对浏览器多进 阅读全文
摘要:
实现原生 AJAX 封装 function ajax(url, type, params, cb, opt) { var xhr = new XMLHttpRequest(), opt = opt || {} xhr.onreadystatechange = callback // get 请求参数 阅读全文
摘要:
1. 单词断行 1.1 什么是单词(word) 英文的单词我们都知道,空格分开的都是一个个单词,中文的单词在浏览器中指的一个字。 下面是一个浏览器判定单词的例子: 中文 //2 个单词 Hello world //2 个单词 Helloworld //1 个单词 1.2 默认断行效果 当父容器无法在 阅读全文
摘要:
事件捕获与事件冒泡: 事件捕获:由微软公司提出,事件从文档根节点(Document 对象)流向目标节点,途中会经过目标节点的各个父级节点,并在这些节点上触发捕获事件,直至到达事件的目标节点; 事件冒泡:由网景公司提出,与事件捕获相反,事件会从目标节点流向文档根节点,途中会经过目标节点的各个父级节点, 阅读全文