笔记
一世无橙
这个作者很懒,什么都没留下…
展开
-
三层架构
今天的内容:mongoose 的介绍、三层架构mongoosemongoose 是一个操作 mongodb 的nodejs 驱动库。什么驱动?驱动是一个程序,其实就是提供了一套接口用来操作硬件。mongodb 是数据库,nodejs 是js的一个运行环境,凭什么nodejs 可以操作 mongodb,所以这个时候就需要相应的驱动程序来提供接口。mongoose 安装npm i mongoose连接 mongodb连接mongodb的代码如下:const mongoose = requ原创 2020-12-03 11:06:49 · 293 阅读 · 1 评论 -
HTTP动词
常用的HTTP动词有下面五个(括号里是对应的SQL命令)。GET(SELECT):从服务器取出资源(一项或多项)。POST(CREATE):在服务器新建一个资源。PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。DELETE(DELETE):从服务器删除资源。例子:GET /zoos:列出所有动物园(zoos:集合名称,students,teachers)POST /zoos:新建一个动物园GE原创 2020-11-23 10:51:45 · 263 阅读 · 1 评论 -
JS各种距离和尺寸
距离/宽高:screen.width:屏幕的宽度screen.height:屏幕的高度element.style.width:当前对象的宽度。element.style.height:当前对象的高度。element.style.left:当前对象的left值。element.style.top:当前对象的top值。element.offsetParent:当前对象的最近的定位父级元素element.offsetWidth:当前对象的宽度(width+padding+border)eleme原创 2020-11-09 17:42:51 · 446 阅读 · 0 评论 -
JS随机数
function randomNum(min, max) { if (min > max) { [min, max] = [max, min]; } let num = parseInt((max - min + 1) * Math.random() + min); return num;}原创 2020-11-05 16:47:50 · 178 阅读 · 0 评论 -
执行上下文
执行上下文简写:EC全称:execution context分类:-全局上下文:打开一个窗口,就会创建一个全局上下文(关闭即销毁)-局部上下文:调用函数时就会创建局部上下文(函数执行完,销毁)-eval上下文(了解):会解析字符中的JS代码功能:代码执行之前的准备工作,确定当前环境下变量的取值作用域和执行上下文的区别:作用域:-静态;执行上下文:-动态;-执行才有EC提升1、变量提升:var 声明的变量(除函数内),只提升变量的声明。2、函数提升:提升整个函数体执行上下文原创 2020-11-02 08:55:13 · 170 阅读 · 0 评论 -
全局对象
window(但是只能识别var声明;方法只能识别字面量)只要打开浏览器就会创建一个window对象let全局变量与var全局变量的区别:let全局变量无法被window使用var全局变量可以被window使用即var声明变量(非函数内部)为window的属性但是var声明的属性window删除不了let i = 10;console.log(i);//10console.log(window.i);//unvar j = 20;console.log(j);//20console原创 2020-10-27 08:35:33 · 141 阅读 · 0 评论 -
js数组及其常用属性和方法
数组功能:一个标识符存储多个数据声明数组:-字面量声明:let arr = [];-构造函数声明:let arr = new Array();使用数组中的值:arr[0]数组中的每个值,都会有对应的一个下标(索引),可以通过下标,获取数组当中的值,下标的起始值是0,数组中第一个值下标为0,第二个值为1,以此类推。注:获取数组不存在值的下标,会得到undefined【扩展】字面量和构造函数的区别:字面量的解析效率比构造函数高,原因:字面量属于JSON格式,可以直接被JS解析。构造函数需要先调原创 2020-10-11 18:23:48 · 341 阅读 · 0 评论 -
js获取属性节点
DOM创建注释节点let comEle = document.createComment("注释内容");获取和添加属性节点获取属性节点的值书写格式:元素节点.getAttribute(属性名)例:let claValue = divELe.getAttribute("class");获取节点的类名console.log(divELe.class);//unconsole.log(divELe.className);//box注:由于class关键字,会冲突,因此获取类名用classN原创 2020-09-27 20:48:09 · 506 阅读 · 0 评论 -
获取字符串中的内容
1、string属性:str.length方法获取字符串的内容其中substring第二个参数为负的时候会自动变成0,然后把0放前面,大的放后面,功能与slice类似repeat小括号里是重复的次数字符串大小写【math】【date】月份从0开始,获取的是当前电脑的时间2、正则表达式功能:描述一个字符串的匹配模式,即判断用户输入的内容是否符合设置的规则字面量声明全局变量,在最后一个/后面加g不加g加g取消大小写敏感,最后一个/加ig和i顺序不影响原创 2020-09-20 23:14:38 · 2001 阅读 · 0 评论 -
JS的集合和函数笔记
1、一个标识符(集合),可以存储多个数据,数据不能重复集合与数组的区别:集合的内容具有唯一性声明集合 构造函数集合里添加内容判断唯一性是全等匹配数组去重:数组转集合再转数组********2、集合的方法和属性集合的个数(书写格式:集合 . size)链式调用(一行代码连续书写多个方法)集合.add()依然是一个集合,所以可以调用add方法 删除:集合的键值对:键值和键名相同数组清空:查找3、函数:可以实现一定的功能,即把可以实现一定功能的代码,封装成一原创 2020-09-13 22:42:11 · 287 阅读 · 0 评论 -
条件分支语句
1、条件分支语句单分支书写格式:功能,当条件为真,执行大括号里的代码块,反之不执行。双分支多分支语句作用域全局作用域:没有大括号包含,声明的变量为全局变量,在当前JS文件任何地方均可使用局部作用域:有大括号包含,声明的变量为局部变量,在当前的作用域和嵌套的作用域均可使用函数作用域不同的作用域的变量名可以重复switch语句书写格式匹配方式是全等;break终止case的继续执行代码;default,前面的选项都不匹配时执行里面的内容...原创 2020-09-06 19:38:50 · 921 阅读 · 0 评论 -
2020-08-09
1.块级格式化上下文(BFC,blockformattingcontext)它是一个独立的渲染区域,它规定了在该元素中,常规流块盒的布局。BFC的渲染区域:这个区域由某个HTML元素创建,以下元素会在其内部创建BFC:根元素(html);浮动和绝对定位;overflow不等于visible的块盒。不同BFC它们进行渲染时互不干扰创建BFC的元素,隔绝了它内部和外部的联系,内部的渲染也不会影响到外部。规则:创建BFC的元素,它的自动高度需要计算浮动元素(清除浮动)创建BFC的元素,它的边框盒不会与浮动元素重原创 2020-08-09 19:48:42 · 96 阅读 · 0 评论 -
HTML选择器
选择器1.组合选择器、并集选择器p,div,span(逗号分开,三个元素都能被选中)组合选择器比较特殊性时要分开计算2.层次选择器:子级选择器:父元素+“>”+子元素{声明块}后代选择器:父元素+空格+子元素{声明块}兄弟选择器:都只能选中当前元素后面的兄弟元素。相邻兄弟:兄弟元素A+“+”+兄弟元素B{声明块}(选中A后面相邻的兄弟元素B,中间不能有任何标签)通用选择器:不相邻兄弟,兄弟元素A+“~”+兄弟元素B{声明块}3.伪类选择器:结构伪类选择器:p:nth-child(原创 2020-08-02 12:55:20 · 427 阅读 · 0 评论