08 2022 档案
摘要:vue底层原理 vue的定义 ● vue是一套用于构建用户界面的渐进式框架 ● vue是一款基于MVVM方式的轻量级的框架 ● vue是一款基于数据驱动、组件化思想的框架 ● vue被设计为可以自底向上、逐层应用的框架 ● vue的核心库只关注视图层,易于上手,还便于与第三方库或既有项目整合 ● 当
阅读全文
摘要:遍历器 for最重要的,兼容性好 for in 循环 可以遍历引用类型,包括对象(多用于用来遍历数组) var arr = [22,33,44] for (var i in arr) { // 遍历,多用来遍历对象,而不是遍历数组 console.log(i,arr[i]) } var obj =
阅读全文
摘要:svg矢量图 svg矢量图:就是用标签代码来画图 文件的类型取决于它的编码是怎样的
阅读全文
摘要:商品懒加载 核心代码 let i = 1 let loading = document.querySelector('.loading') var ob = new IntersectionObserver(async function (entries) { console.log(entries
阅读全文
摘要:this this代表一个对象,常常在项目中我们要给对象操作属性 this指向的是调用者 在全局作用域下普通函数指向的是window 定时器里面的this也是指向window fn() // window obj.fn() // obj obj.xx.fn() // obj.xx (function
阅读全文
摘要:数据结构 树 树的的特性 一个二叉树第i层的最大节点数:2^(i-1) ,i>=1 深度为K的最大节点树为 2^k - 1 对于任何非空二叉树,若n0表示叶节点的个数,n2表示度为2的个数,那么关系为n0 = n2 + 1 完美二叉树(满二叉树) 除了叶子结点之外的每一个结点都有两个孩子,每一层(当
阅读全文
摘要:egg egg下载 npm init egg --type=simple npm i 下载后启动 npm run dev 插件下载 下载 npm i 插件名 在config里面引入和配置,比如我们下载egg-cors解决跨域问题 //1.下载 cnpm i --save egg-cors //2.开
阅读全文
摘要:jQuery jQuery简介 JavaScript库:即一个封装好的特定的集合(方法和函数),从封装一大堆函数的角度理解库,就是在这个库里面有许多预先定义好的的函数,比如动画animate,hide,show,比如获取元素等 简单理解就是一个js文件,里面是我们原生js代码进行了封装,存放在里面,
阅读全文
摘要:##selenium selenium用来做爬虫的优点 简单,直观,直接模拟用户行为,用户加载网络获取网页源码 与scrapy结合 多种web-drive(browser),交互:无头,chrome selenium用来做爬虫的缺点 易识别 易崩溃 不易做成可执行文件.exe 环境变量 下载驱动(用
阅读全文
摘要:##从输入 URL 到页面加载完成过程 浏览器的地址栏输入 URL 并按下回车。 浏览器查找当前 URL 是否存在缓存,并比较缓存是否过期。 DNS 解析 URL 对应的 IP。 根据 IP 建立 TCP 连接(三次握手) HTTP 发起请求。 服务器处理请求,浏览器接收 HTTP 响应。 渲染页面
阅读全文
摘要:数据存储 缓存技术:把数据存储到磁盘中 大文件的离线存储:音频和视频 本地数据库 三个缓存技术(Cookie sessionStorage localStorage) cookie <input id> <script> //设置cookie function fn() { var } //封装函数
阅读全文
摘要:style的讲解 写在style里面的样式,会绘制成css样式结构体,不能用jd.styel.width来获取 var style1 = document.getComputedStyle(jd) // style1.width就可以获取
阅读全文
摘要:防抖节流(重点) 浏览器的极限绘制频率60侦,计时器的话大概为16.666 高频触发的业务:抽奖 登录 动画 网络加载等等需要 // 登录 防抖 function fangdou(cb,delay) { var timer = null reture function() { let arg = a
阅读全文
摘要:精灵图 页面上会用到很多小图标,把这些小图标放在一张大图片上显示,需要用到的时候通过背景的位置来展示每一个小图标,目的在于优化性能 字体图标 先下载自己喜欢的字体 自定义规则css里写 @font-face {font-family: name(自己取的名字)} 使用 div { font-fami
阅读全文
摘要:SQLite数据库 SQLite是单机的,不同与其他sql数据库,直接读写普通磁盘文件,有多个表,索引,触发器和视图的完整sql数据库包含在单个磁盘文件中sqlite本身就是一个使用sql的数据库管理系统 为不同的编程语言提供api,开源免费,灵活,跨平台。 sqlite缺点:用于处理中低硫的HTT
阅读全文
摘要:mongo笔记 mongodb插入数据 db.collection.insert({}) //插入数据,_id存在会报错 db.collection.save({}) //插入数据,但_id存在会更新 mongodb的更新操作 db.collection.update({},{}) db.colle
阅读全文
摘要:git 常用命令 git clone git add . git commit -m "描述" git push 如果克隆后的有.git文件 有自己的orgin,可以直接push 创建文件夹 mkdir person cd mkdir 添加远程的地址 git remote add orgin htt
阅读全文
摘要:AJAX 不需要加载整个页面,局部刷新 在项目的根初始化 npm inin -y 生成一个json的配置项目,注意:配置文件是json对象,不要在里面写注释之类的 { "name": "ajax", "version": "1.0.0", "description": "", "main": "in
阅读全文
摘要:跨域 浏览器为了用户的信息安全 请求的网址和当前页面的网址不是同一个服务器,就会拒绝接受服务器的信息 满足一下条件的才会跨域问题 AJAX请求 非同源 CORS res.setHeader("Access-Control-Allow-Origin","*") jsonp 用script标签来得到数据
阅读全文
摘要:promise promise设计在es5就出现了,不过是ex6正式出现在语法中 promise它是一种容器,存放一个未来才会结束的事件(一般来说是异步的) 特点 对象的状态有三种padding fulfilled reject。它的状态和外界无关 一旦状态改变,就不会再变。不同于绑定的事件,每次触
阅读全文
摘要:模块化 引入模块 import是js语法的,前后端都可以用,require是要nodejs的全局变量,不要在浏览器上使用 前端的用import 后端用require 区别 require可以写在事件和函数中,import只能在于顶部 模块分类 内置模块 第三方模块 自己定义的模块 在引入模块的时候
阅读全文
摘要:小例子 1. // cls 清屏 // 引入node自带的模块http 可以调用函数 来创建后端服务器 var http = require("http") // 创建一个服务器对象 回调函数不会直接运行 会在用户每次访问当前计算机的Ip下的8081端口 var app = http.createS
阅读全文