自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 收藏
  • 关注

原创 MVC MVP MVVM 三者区别与联系

1、MVC模式 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器.

2022-03-20 12:10:27 904 1

原创 v-if 和 v-show 区别

v-if和v-show的区别:vue中的 v-if 和 v-show 二者都可以动态的控制元素的隐藏和显示,但是他们控制的原理是不同的。v-if 的特点:每次都会重新删除或创建元素,v-if 有较高的切换性能消耗,如果元素可能永远也不会被显示出来被用户看到,则推荐使用 v-ifv-show 的特点:每次不会重新进行DOM的删除和创建操作,只是切换了元素的 display:none 样式,v-show 有较高的初始渲染消耗,如果元素涉及到频繁的切换,最好不要使用 v-if, 而是推荐使用 v-..

2022-03-19 11:53:04 1016

原创 TCP 三次握手 和 四次挥手

目录三次握手四次挥手三次握手简单来讲就是:A与B建立TCP连接时:首先A向B发SYN(同步请求),然后B回复SYN+ACK(同步请求应答),最后A回复ACK确认,这样TCP的一次连接(三次握手)的过程就建立了!三次握手过程说明:1、由客户端发送建立TCP连接的请求报文,其中报文中包含seq序列号,是由发送端随机生成的,并且将报文中的SYN字段置为1,表示需要建立TCP连接。(SYN=1,seq=x,x为随机生成数值)2、由服务端回复客户端发送的TCP连接请求报文,其.

2022-03-16 22:01:22 271

原创 Node.js 如何使用MySQL

1、安装 mysql 模块首先,我们需要使用nodejs的包管理工具(npm)安装mysql的驱动。命令行如下:npm install mysql2、配置数据库连接参数在当前文件夹里创建config,在该文件夹下新建一个dbconfig.js,用来连接数据库const Sequelize=require('sequelize');const DB=new Sequelize('dbtest','root','123456',{ host:'localhost',

2022-03-02 22:30:00 2550

原创 JS 判断数据类型的方法

目录一、JS 中的数据类型二、JS 中判断数据类型的方法1、使用 typeof2、使用 instanceof3、使用Object.prototype.toString.call4、使用constructor一、JS 中的数据类型ECMAScript中有5中简单数据类型(也称为基本数据类型):Undefined、Null、Boolean、Number和String。还有1中复杂的数据类型————Object,Object本质上是由一组无序的名值对组成的。其中Unde..

2022-01-30 17:01:37 17530

原创 web标准 和 HTML 语义化

目录1、web标准2、w3c(1)对结构的要求:(2)对css和js的要求:3、Html 语义化(1)什么是语义化(2)为什么要语义化(3)写Html 代码 需要注意(4)Html 常见语义化标签(5)Html 新增标签1、web标准web标准,简单来说就是将页面的结构、表现和行为各自独立实现(结构、表现和行为相分离原则)。结构主要由html标签组成,通俗来讲,写入body里的各种标签都是为了页面的结构;表现指的是css样式表,通过css样式表,可以使写入bo

2022-01-29 23:06:22 146

原创 JS 对象和数组的遍历方法

目录一、JS 遍历数组1、for 循环遍历数组2、使用for ……in 遍历数组3、for……of 遍历数组4、forEach 遍历数组5、map遍历数组二、JS 遍历对象1、for……in 循环遍历对象2、Object.keys 遍历对象3、Object.getOwnPropertyNames(obj) 遍历对象一、JS 遍历数组1、for 循环遍历数组// 1、for循环let arr = ['d', 'a', 'w', 'n'];for (le

2022-01-23 13:28:53 6928

原创 JS 数组去重

目录1、排序法2、indexOf 遍历数组法3、indexOf 数组下标法4、循环判断法5、set 去重6、map去重1、排序法思路:先将数组进行排序 再利用for循环遍历,如果当前数和下一个数不一样,将当前数添加进新数组// 排序法var arr = [1, 2, 1, 2, 3, 1];arr.sort((a, b) => a - b);let res = [];for (let i = 0; i < arr.length;...

2022-01-22 16:01:16 539

原创 Map 和 Set 的特点和区别

目录一、简述二、Map三、Set四、Set和Map区别一、简述Set 和 Map 主要的应用场景在于 数据重组 和 数据储存。Set 是一种叫做 集合 的数据结构,Map 是一种叫做 字典 的数据结构。集合(Set):ES6 新增的一种新的数据结构,类似于数组,成员唯一(内部元素没有重复的值)。且使用键对数据排序即顺序存储。Set 本身是一种构造函数,用来生成 Set 数据结构。Set 对象允许你储存任何类型的唯一值,无论是原始值或者是对象引用。二、Ma...

2022-01-20 08:15:00 15101 1

原创 初识Ajax

1、传统网站中存在的问题页面加载时间长在传统的网站中,用户只能通过浏览器刷新页面从服务器获取数据。如果网速慢,获取数据的时间会很长。当页面加载数据时,用户也不能在该页面进行其他的操作,只能等待网页加载完成。表单提交的问题在用户提交表单的时候,如果用户在表单中填写的内容有一项不符合要求,网页就会重新跳转回表单页面。例如用户提交“用户注册”表单后,如果用户输入的邮箱地址已经被别人注册过了,服务器会返回错误信息,并将页面跳转回表单页面。由于页面发生了跳转,刚刚用户填写的信息都消失了,所..

2022-01-19 19:55:35 540

原创 回调地狱

一、回调地狱在了解回调地狱之前,先了解一下 ‘ 回调函数’和‘ 异步任务 ’1、回调函数回调函数:当一个函数作为参数传入另一个函数中,并且它不会立即执行,只有当满足一定条件后该函数才可以执行,这种函数就称为回调函数。function fn(){ console.log('陕西西安') } setTimeout(fn,3000) //fn就是回调函数2、异步任务与之相对应的概念是“同步任务”,同步任务在主线程上排队执行,只有前一个任务执行完

2022-01-16 23:17:09 1581 1

原创 Node.js 项目中操作MySQL

目录一、安装与配置mysql 模块1、在项目中操作mysql的步骤2 安装与配置 mysql 模块(1)安装 mysql 模块(2) 配置 mysql 模块(3)测试 mysql 模块能否正常工作二、 使用 mysql 模块操作 MySQL 数据库1. 查询数据2. 插入数据3、更新数据4、删除数据一、安装与配置mysql 模块1、在项目中操作mysql的步骤安装操作 MySQL 数据库的第三方模块(mysql) 通过 mysql 模块连接..

2022-01-13 19:54:42 511

原创 Express

目录一、初识 Express1、什么是express2、express 的基本使用3、nodemon二、express 路由1、路由的概念2、路由的使用(1)最简单的用法(2)模块化路由(3)创建路由模块(4)注册路由模块(5)为路由模块添加前缀一、初识 Express1、什么是express官方给出的概念:Express 是基于 Node.js 平台,快速、开放、极简的 Web 开发框架。 通俗的理解:Express 的作用和 Node.

2022-01-12 19:40:41 515

原创 Node.js模块化

目录一、模块化的基本概念1、什么是模块化2、模块化规范二、Node.js 中的模块化1、Node.js 中的模块化分类2、加载模块3、向外共享模块作用域中的成员4、Node.js 中的模块化规范三、npm 与 包1、包的概念2、包的安装与卸载3、包管理配置文件一、模块化的基本概念1、什么是模块化模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说,模块是可组合、分解和更换的单元。编程领域中的模块化就是遵守固

2022-01-11 21:57:34 471

原创 Node.js 内置模块(http、fs模块)

目录一、http 模块1、什么是http 模块2、用http创建web服务器二、fs 模块1、读文件(1)异步读取 fs.readFile(2)同步读取readFileSync2、写文件(1)异步写入fs.writeFile(2)同步写入writeFileSync3、打开文件4、目录操作(1)创建、删除目录(文件夹)(2)读取目录一、http 模块1、什么是http 模块在网络节点中,负责消费资源的电脑,叫做客户端;负责对外提供网...

2022-01-08 22:40:40 795

原创 HTTP中 GET 和 POST 请求的区别

一、http 的请求报文GET 和 POST 其实都是 HTTP 的请求方法。除了这 2 个请求方法之外,HTTP 还有 HEAD、PUT 、DELETE、TRACE、CONNECT、OPTIONS 这 6 个请求方法。所以HTTP 的请求方法共计有 8 种,它们的描述如下所示:请求方法 描述 get 请求指定的页面信息,并返回实体主体 post 向指定资源提交数据新型处理请求(例如提交表单或上传文件)。数据被包含在请求实体中。post 请求可能会导致行的自愿建立和

2022-01-07 14:18:57 703

原创 Node.js简介

目录一、什么是node.js二、为什么要用node.js三、node.js 中的npm1、npm 是什么2、npm 命令安装模块3、选用 cnpm四、node.js 的模块化 1、CommonJS模块规范及规范化内容 2、moudle对象 3、使用require导入模块一、什么是node.jsNode.js是JavaScript语言的服务器运行环境。Node.js 就是运行在服务端的 JavaScript。 Node.js 是一个基于C...

2022-01-05 20:11:23 24687

原创 JS 单线程 同步和异步

目录一、JS 单线程1、单线程2、为什么是单线程二、同步和异步1、同步任务2、异步任务3、异步机制一、JS 单线程1、单线程JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。单线程就意味着,所有任务需要排队,前一个任务结束,才会执行后一个任务。如果前一个任务耗时很长,后一个任务就不得不一直等着。于是就有一个概念,任务队列。2、为什么是单线程单线程和异步确实不能同时成为一个语言的特性。js选择了成为单线程的语言,所以它本身不

2022-01-02 20:27:46 445

原创 MongoDB 简介

目录一、什么是NoSQL?二、什么是MongoDB三、DBMS 与 MongoDB 对应的术语四、MongoDB 数据类型五、MongoDB的基本操作一、什么是NoSQL?NoSQL,指的是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。NoSQL用于超大规模数据的存储。(例如谷歌、Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。.

2021-12-31 21:22:04 343

原创 数据库基础 SQL基础

一、数据库数据库(Database,DB)是长期存储在计算机内的、有组织的、可共享的、统一管理的相关数据的集合。按照字面的理解,数据库就是存放数据的仓库。二、数据库管理系统(DBMS)DBMS的功能:数据库定义功能;数据存取功能;数据库运行管理功能;数据库的建立和维护 功能;数据通信功能。 DBMS的组成:语言编译处理程序;系统运行控制程序;系统建立、维护程序;数据字典。三、数据库系统(DBS)的组成数据 数据是数据库系统的工作对象,它们是某特定应用环境中进行管理和决策所必需的

2021-12-30 21:44:49 1383

原创 SQL 语句 (数据查询语言)

1、基础查询查询所有列SELECT * FROM 表名;* :通配符,表示所有列 SELECT * FROM stu;查询指定列SELECT 列名1, 列名2, …列名n FROM 表名;SELECT sid, sname,age FROMstu2、条件查询2.1条件查询介绍条件查询就是在查询时给出WHERE子句,在WHERE子句中可以使用如下运算符及关键字:=、!=、&lt...

2021-12-30 16:19:44 4833

原创 ES6新特性

1、声明变量let和const ES6推荐使用let声明局部变量,相比之前的var(无论声明在何处,都会被视为声明在函数的最顶部)var let const 函数级作用域 块级作用域 块级作用域 变量提升 不存在变量提升 不存在变量提升 值可更改 值可更改 值不可更改 2、箭头函数ES6 中,箭头函数就是函数的一种简写形式,使用括号包裹参数,跟随一个 =>,紧接着是函数体;语法格式: let/const 变量名...

2021-12-24 18:12:06 445

原创 bootstrap简介

1、什么是bootstrapbootstrap是Twitter推出的一个用于前端开发的开源工具包。它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。是一个做网页的框架(目前最流行的WEB前端框架),就是说你只需要写HTML标签调用它的类你就可以很快速的做一个高大上的网页,你不用担心兼容问题,提供了很多样式供你选择!比如你需要做一个网站的导航对吧,你自己写的话你需要写很多代码,但是如果你使用bootstrap框架来写的话,只需要写好H

2021-12-23 22:15:00 2168

原创 事件冒泡与事件捕获

目录1、dom 事件流2、事件冒泡3、事件捕获4、阻止事件冒泡1、dom 事件流事件流是指当事件发生时,会在发生事件的元素节点与DOM树根节点之间按照特定的顺序进行传播,这个过程称之为事件流。网景(Netscape)公司团队的事件流采用事件捕获方式,而微软(Microsoft)公司的事件流采用事件冒泡方式,W3C对网景公司和微软公司提出的方案进行了中和处理,规定了事件发生后,首先实现事件捕获,但不会对事件进行处理;然后进行到目标阶段,执行当前元素对象的事件处理程序,但它会被看成.

2021-12-20 18:21:07 296

原创 正则表达式

目录一、正则表达式简介1、什么是正则表达式2、正则表达式特点3、正则表达式的创建和测试二、正则表达式的特殊字符 1、正则表达式的组成2、模式修饰符3、边界符4、字符类5、预定义符6、用户名验证一、正则表达式简介1、什么是正则表达式 正则表达式( Regular Expression )是用于匹配字符串中字符组合的模式。在 JavaScript中,正则表达式也是对象。 正则表通常被用来检索、替换那些符合某个模式(规则...

2021-12-17 20:15:00 2746 1

原创 jQuery 实现简单的动画

目录jQuery 实现简单的动画1、显示/隐藏2、向上收缩/向下展开3、淡入/淡出4、自定义动画jQuery 实现简单的动画1、显示/隐藏 (1)显示:show(speed,[callback]) speed:效果时长。可取的值:slow、fast、毫秒数 callback:过渡完成后,所执行的方法名称 (2)隐藏:hide(speed,[callback]) (3)交替:toggl...

2021-12-15 20:05:02 1192 1

原创 jQuery 属性的操作

目录一、操作属性1、attr():方法2、prop():方法二、css 属性1.设置css属性2.获取css属性3.添加、删除、交替添加删除样式三、设置/获取元素的width和height属性1、获取width2、设置width四、设置获取元素内容1、获取/设置元素内容体HTML代码2、获取/设置元素内容体纯文本一、操作属性1、attr():方法可以操作标准属性,也可以操作自定义属性 只写属性名的属性,返回的不是true/false...

2021-12-14 20:39:50 1799

原创 jQuery 简介

目录1、什么是jQuery2、jQuery 的特点3、在页面中引用jQuery4、jQuery的$(document)处理器5、jQuery的基本选择器6、jQuery的过滤选择器1、什么是jQueryjQuery是一个快速,小型且功能丰富的JavaScript库。借助易于使用的API(可在多种浏览器中使用),使HTML文档的遍历和操作,事件处理,动画和Ajax等事情变得更加简单。2、jQuery 的特点快速获取文档元素​ jQuery的选择机制构建于Css的选.

2021-12-13 22:00:57 768

原创 放大镜案例

目录1、首先搭建HTML结构:2、获取元素3、鼠标经过小图片盒子, 黄色的遮挡层 和 大图片盒子显示,离开隐藏2个盒子4、获取鼠标子盒子内坐标5、此时鼠标位于黄色遮罩层的左上角,应该改为中央6、遮罩层不能超出图片位置7、移动黄色遮挡层,大图片跟随移动案例分析整个案例可以分为三个功能模块 1、 鼠标经过小图片盒子, 黄色的遮挡层 和 大图片盒子显示,离开隐藏2个盒子功2、黄色的遮挡层跟随鼠标功能。 3、移动黄色遮挡层,大图片跟随移动功能。

2021-12-08 12:58:30 228

原创 var let const声明变量 区别和用法

一、var 声明变量var 存在全局作用域和函数作用域两种。没有块级作用域的说法,并且存在变量提升。二、let 声明变量1、块级作用域一个{ } 可以看做是一个块级作用域 , 在作用域之外 a不能被访问{let a=3;console.log(a) // 3}...

2021-12-07 21:18:34 497

原创 元素可视区client 元素滚动scroll

目录一、元素可视区client1、client概述2、获取client代码二、元素滚动scroll1、scroll概述2、固定侧边栏三、三大系列总结1、三大系列大小对比2、主要用法一、元素可视区client1、client概述client 翻译过来就是客户端,我们使用 client 系列的相关属性来获取元素可视区的相关信息。通过 client 系列 的相关属性可以动态的得到该元素的边框大小、元素大小等。 属性...

2021-12-06 21:55:40 240

原创 元素偏移量 offset

目录一、元素偏移量offset1、offset 概述2、offset 与 style 区别3、模态框拖曳效果 案例一、元素偏移量offset1、offset 概述offset 翻译过来就是偏移量, 我们使用 offset 系列相关属性可以动态的得到该元素的位置(偏移)、大小等。获得元素距离带有定位父元素的位置 获得元素自身的大小(宽度高度) 注意: 返回的数值都不带单位 属性 说明 offsetLeft ..

2021-12-03 20:15:00 540

原创 鼠标事件 键盘事件

一、常用的鼠标事件鼠标事件 触发条件 onclick onmouseover onmouseoutonfocus onblur onblur onmousemove onmouseup onmousedown

2021-12-03 13:15:00 1469

原创 JavaScript 闭包

目录1、什么是闭包2、闭包的作用3、使用闭包需要注意1、什么是闭包所谓“闭包”指的就是有权访问另一函数作用域内变量(局部变量)的函数。注意:由于闭包会使得函数中的变量一直被保存在内存中,内存消耗很大,所以闭包的滥用可能会降低程序的处理速度,造成内存消耗等问题。闭包是可以在另一个函数的外部访问到其作用域中的变量的函数。而被访问的变量可以和函数一同存在。即使另一个函数已经运行结束,导致创建变量的环境销毁,也依然会存在,直到访问变量的那个函数被销毁。就如下面代码所示:functi

2021-12-03 08:15:00 108

原创 HTTP 和HTTPS

目录一、HTTP 和HTTPS 概念二、HTTP与HTTPS区别三、HTTPS工作原理四、HTTPS的优点五、HTTPS的缺点一、HTTP 和HTTPS 概念HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。  HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,

2021-12-02 19:18:38 2035

原创 JavaScript 执行机制 location 对象

一、JavaScript 执行机制1、单线程JavaScript 语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。这是因为 Javascript 这门脚 本语言诞生的使命所致——JavaScript 是为处理页面中用户的交互,以及操作 DOM 而诞生的。比如我们对 某个 DOM 元素进行添加和删除操作,不能同时进行。 应该先进行添加,之后再删除。 单线程就意味着,所有任务需要排队,前一个任务结束,才会执行后一个任务。这样所导致的问题是: 如果 J.

2021-12-01 10:45:00 238

原创 BOM window 对象的常见事件 定时器

目录一、BOM1、什么是BOM2、BOM的构成二、window 对象的常见事件1、窗口加载事件2、调整窗口大小事三、定时器1、定时器方法2、案例1:3秒后自动关闭广告3、案例2:发送短信一、BOM1、什么是BOMBOM(Browser Object Model)即浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心 对象是 window。 BOM 由一系列相关的对象构成,并且每个对象都提供了很多方法与属性。 .

2021-11-30 20:26:43 119

原创 CSS居中

目录行内元素1、水平居中2、 垂直居中块级元素1、水平居中2、水平垂直居中(1)定位(2)定位+margin(3)定位+transform(4)padding (5) flex布局(6)表格法行内元素1、水平居中text-align:center//Html 代码<div class="father"> <span class="son">子元素</span> </di..

2021-11-27 19:02:57 774

原创 H5自定义属性 节点操作

目录一、自定义属性1. 设置H5自定义属性2. 获取H5自定义属性二、节点操作1、为什么要进行节点操作2、节点概述3、节点层级(1)父级节点(2)子节点(3)兄弟节点4、创建节点(1)创建节点(2)添加节点(3)删除节点(4)复制节点(克隆节点)(5)三种动态创建元素的区别一、自定义属性自定义属性目的:是为了保存并使用数据。有些数据可以保存到页面中而不用保存到数据库中。 自定义属性获取是通过getAttribute(‘属性...

2021-11-26 22:22:03 758

原创 事件基础 属性的操作

一、事件基础1、事件概述JavaScript 使我们有能力创建动态页面,而事件是可以被 JavaScript 侦测到的行为。 简单理解: 触发--- 响应机制。 网页中的每个元素都可以产生某些可以触发 JavaScript 的事件,例如,我们可以在用户点击某按钮时产生一个 事件,然后去执行某些操作。2、事件概述①事件源 (谁) ②事件类型 (什么事件) ③事件处理程序 (做啥)页面中有一个按钮,当鼠标点击按钮的时候,弹出“你好”警示框。..

2021-11-25 19:30:00 177

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除