自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(72)
  • 资源 (2)
  • 收藏
  • 关注

原创 cavas与webGL与three.js

cavas three.js

2023-02-08 18:05:08 147

原创 识别图片文字链接备份

工具

2022-07-04 13:35:36 262

原创 jwt 认证机制

1 session 认证的局限性2 什么是jwt2 jwt工作原理2 jwt字符串组成部分3 jwt使用方式4 在express项目中使用jwt注:expiresin 为配置有效期

2022-05-28 01:12:41 153

原创 前后端身份验证 session

1 web开发模式2 如何选择web开发模式3 什么是身份认证3.1 为什么需要身份认证4 session认证机制4.1 http协议的无状态性

2022-05-28 00:26:06 670

原创 项目中使用mysql

1在项目中操作mysql的步骤1.1 安装mysql模块1.2 配置mysql模块1.3 测试mysql模块是否能正常工作注: select 1 无实际作用,只为测试1.4 查询数据1.4 插入数据1.5 更新数据1.6 删除数据2 标记删除...

2022-05-23 10:13:29 145

原创 数据库基本概念

1 什么是数据库2 常见的数据库分类3 传统型数据库的数据组织结构4 库、表、行、字段的关系5 安装配置mySQL6 SQL6.1 SQL能做什么6.2 sql select语句6.3 sql insert语句6.4 sql update语句6.5 sql delete语句6.5 sql的where子句6.6 sql里的and与or运算符6.7 sql里的orderBy 子句6.8 sql里的count * 函数..

2022-05-23 00:42:22 120

原创 express (二)

1 express写接口的跨域问题2 使用cors中间件解决跨域问题3 什么是CORS4 CORS注意事项5 CORS响应头6 CORS请求的分类7 jsonp 接口7.1 实现jsonp接口

2022-05-22 15:24:43 133

原创 express(一)

什么是express2 express 用处3 express的使用3.1 express安装3.2 创建基本的web服务器3.3监听get请求3.4监听post请求3.5 响应给客户端3.6获取url中携带的查询参数3.7 获取url中的动态参数也可匹配两个3 express 托管静态资源3.1托管多个静态资源目录3.2 静态资源挂载路径前缀4 nodemon 的使用4.1 为什么使用nodemon4.2 安装nodemon5 expre

2022-05-22 01:51:35 233

原创 nodeJs 模块加载机制

1 nodeJS模块加载机制2 目录作为模块被加载

2022-05-21 15:05:47 244

原创 nodeJs 包

1什么是包2包的来源3 为什么使用包4 从哪里下载包5 npm 初体验6 安装包的命令7 初次装包后多了哪些文件8安装指定版本的包9 包的语义化版本规范10 包管理配置文件11 快速创建package.json12 dependencies节点13 卸载包14 devDependencies结点15为什么下包速度慢16 解决下包慢问题17 切换npm下的包镜像源18 包的分类(项目包与全局包)19 规范的包结构...

2022-05-21 14:28:12 122

原创 nodeJs模块化

1 什么是模块化2 nodeJs模块的分类3 加载模块4 什么是模块作用域注:模块作用域的好处是防止了全局变量污染5 向外共享模块作用域中的成员6 共享成员时的注意点7 exports对象8 model.exoprts与exports的使用误区9 nodeJs模块化规范...

2022-05-14 20:41:17 105

原创 node 基础 创建基本的Web服务

1 创建web服务器的基本步骤2 req请求对象3 解决中文乱码问题4 res响应对象5根据不同url响应不同的内容

2022-05-14 19:09:08 76

原创 node基础 http模块

1 什么是http模块回顾:什么是客户端、什么是服务器在网络节点中,负责消费资源的电脑叫客户端;负责对外提供网络资源的电脑叫做服务器。2 服务器相关概念2.1 ip地址2.2 域名与域名服务器2.3 端口号...

2022-05-14 17:50:44 78

原创 node基础 path模块

1 什么是path路径模块path模块是node.js官方提供的,用来处理路径的模块。它提供了一系列的地方法和属性,用来满足用户对路径的处理需求。2 路径的拼接3 获取路径中的文件名path.basename()4 获取路径中的文件拓展名...

2022-05-14 17:26:49 839

原创 node fs文件系统(fs模块)

1 fs.readFile()读取指定文件中的内容2判断文件是否读取成功判断error对象是否为null3 fs.writeFile向指定的文件写入内容

2022-05-14 17:07:42 121

原创 nodeJs

1 什么是nodeJsnode.js是一个基于Chrome V8引擎的JavaScript运行环境。2 nodeJs中javaScript运行环境注:浏览器是javaScript的前端运行环境node.js是javaScript的后端运行环境node.js中无法调用Dom和Bom等浏览器内置API...

2022-05-04 17:12:50 729

原创 1.2为什么javaScript可以操作Dom与Bom

2022-05-04 13:23:12 746

原创 1 为什么javaScript代码可以在浏览器中执行

1 为什么javaScript代码可以在浏览器中执行

2022-05-04 13:18:55 1095

原创 promise 读书笔记,promise核心方法(手写promise)

promise 术语1 promise 是一个有then方法的对象或者函数,行为遵循PromiseA+规范2 thenable 是一个有then方法的函数或者对象3 value promise 状态成功时的值,resolve 的参数,number boolean undefined promise4 reason promise 状态失败时的值, reject的参数5 exception 异常值promise的各种状态1 pending1.1 初始状态 可改变1.2 一个promise在r

2022-04-10 15:11:03 414

原创 前端各种禁止

禁止鼠标右键:οncοntextmenu=“return false”;禁止选择:onselectstart=“return false”;禁止拖放:οndragstart=“return false”;禁止拷贝:οncοpy=document.selection.empty() 。禁止复制:oncopy = “return false”;禁止保存:,放在head里面。禁止粘贴:<input type=text οnpaste=“return false”>禁止剪贴:oncut =

2022-03-22 17:16:27 129

原创 vue项目保存单引号变双引号

vscode设置中搜索vetur.format.defaultFormatter.js选择vscode-typescript在项目根目录下新建.prettierrc.json{ "singleQuote":true, "semi":false}

2022-03-21 14:07:50 1065

翻译 svg path

2021-09-09 13:13:56 71

原创 currentColor

currentColor是css3中的新属性,它的意思是设置当前颜色值为当前文字的颜色,也就是currentColor的值==color属性的值

2021-09-06 11:12:02 152

原创 node.js创建第一个应用

node.js创建第一个应用1 引入require模块我们是用require指令来载入http模块,并将实例化的http赋值给变量http,实例如下var http=require(‘http’)2 创建服务器http.createServer() 方法创建服务器并使用 listen 方法绑定 8888 端口。 函数通过 request, response 参数来接收和响应数据。实例如下,在你项目的根目录下创建一个叫 server.js 的文件,并写入以下代码:var http = requi

2021-07-12 11:38:20 140

原创 echarts饼状图实现不同icon

echarts饼状图实现不同icon引入图片1.1引入图片1.1import img1 from '@/assets/img/power.png'import img2 from '@/assets/img/underPan.png'import img3 from '@/assets/img/assist.png'import img4 from '@/assets/img/control.png'import img5 from '@/assets/img/other.png'cons

2021-06-10 14:28:05 609

原创 MockJs的使用

MockJs的使用1 Mock.js的语法规范1.1 数据模板定义规范1.1.1 生成规则示例1.2 数据占位符定义规范1 Mock.js的语法规范Mock.js的语法规范包括两部分:1 数据模板定义规范2 数据占位符定义规范1.1 数据模板定义规范数据模板中的每个属性由三部分组成:属性名、生成规则、属性值。//属性名 name // 生成规则 rule // //属性值 value 'name|rule':value注意:1 属性名和生成规则之间用|分隔。2 生成规则是可

2021-03-25 17:23:37 127

原创 实现简易前端路由

1路由路由是一个比较广义和抽象的概念,路由的本质就是对应关系。在开发中,路由分为:前端路由和后端路由。1.1后端路由:概念:根据不同的用户URL请求,返回不同的内容。本质:URL请求地址与服务器资源之间的对应关系。1.2 前端路由概念:根据不同的用户事件,显示不同的页面内容本质:用户事件与事件处理函数之间的对应关系1.3 实现简易前端路由(前端路由的本质)基于URL中的hash实现(点击菜单的时候改变URL中的hash,根据hash的变化控制组件的切换)。<!DOCTYPE

2021-01-14 15:22:59 197 2

原创 发布者订阅者模式

1 发布订阅模式理解假定存在一个信号中心,某个任务执行完成就向信号中心发布一个任务,其他任务可以向信号中心订阅这个任务从而知道什么时候自己可以开始执行。(学生家长向学生所在班级订阅了获取学生考试成绩这一个事件,当老师公布了学生的成绩后就自动的通知学生的家长,这样学生家长就知道了学生的考试成绩)在这个例子中学生所在班级就是信号信息,老师是发布者,学生是订阅者。注:vue中兄弟组件通信过程就是通过发布者订阅者模式实现的。2 发布订阅者模式代码...

2021-01-14 09:49:33 233

原创 vue3响应式原理(proxy)

vue3的响应式原理是配合proxy来实现的,它是直接监听对象而非属性,所以就不需要使用循环了1 vue3使用proxy实现双向数据绑定原理代码<body> <div id="app"></div> <script> let data={ msg:'hello', count:10 }; let vm=new Proxy(data,{

2021-01-13 16:27:07 2215

原创 vue2.x双向数据绑定原理

1 vue双向数据绑定深入理解当你把一个普通的JavaScript对象传入Vue实例作为data选项,Vue将遍历此对象的所有Property,并使用Object.defineProperty把这些Property全部转为getter/setter。Object.defineProperty是ES5中一个无法shim的特性,这也是Vue不支持IE8以及更低版本浏览器的原因。这些getter/setter对用户来说是不可见的,但是在内部它们让Vue能够追踪依赖,在property被访问和修改时通知变更。

2021-01-13 15:36:14 130

原创 开源的虚拟Dom库--Snabbdom

1 从Vue2.x开始内部使用的虚’Dom’,就是改造的snabbdom

2021-01-13 14:20:19 203

原创 虚拟Dom

1 虚拟Dom虚拟Dom是由普通的Js对象来描述Dom对象,因为不是真正的Dom对象,所以才叫虚拟Dom。为什么用虚拟Dom来模拟真实的Dom?因为一个Dom对象中的成员是非常多的,所以创建Dom对象的成本是非常高的,如果使用虚拟Dom来描述真实Dom,就会发现创建的成员少,成本也就低了。注:操作Dom会影响页面的性能,并且有时候数据根本没有发生改变,我们希望未更改的数据不需要重新渲染。2 虚拟Dom的思想虚拟Dom的思想是先控制数据再到视图,但是数据状态是通过diff比对,它会比对新旧虚拟Dom

2021-01-13 14:07:58 87

原创 服务端渲染与客户端渲染

1 渲染的概念渲染就是将模板与数据拼接到一起2 传统的服务端渲染传统的服务端渲染是把模板与数据统一生成好返回给客户端,是有利于SEO的。3 服务端渲染服务端渲染 :DOM树在服务端生成,然后返回给前端。服务端渲染的模式下,当用户第一次请求页面时,由服务端把需要的组件或页面渲染成HTML字符串,然后把它返回给客户端。客户端拿到手的,是可以直接渲染然后呈现给用户的HTML内容,不需要为了成为DOM内容自己再去跑一遍JS代码。使用服务端渲染的网站,可以说是‘所见即所得’,页面上呈现的内容,我们在ht

2021-01-13 10:36:58 122

原创 单页面应用优缺点

1 单页面应用优缺点1 用户体验好2 开发效率高3 可维护性好2 单页面应用的缺点1 首屏渲染时间长(原因:在客户端是通过js生成html页面,用户需要等待客户端解析JavaScript)2 不利于SEO(SEO:汉译为搜索引擎优化。是一种方式:利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名。目的是:为网站提供生态式的自我营销解决方案,让其在行业内占据领先地位,获得品牌收益。)3 解决单页面应用的缺点提出了服务端渲服务端渲染:简单理解是将组件或页面通过服务器生成html字符串,再发送到

2021-01-13 09:47:22 898

原创 reduce

1 reducereduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。对空数组是不会执行回调函数的。1.1 语法// 1.数组求和var arr = [1,5,8,6,15,78,65,25,48,55]var sum = arr.reduce(function(total,currentValue){ return total+currentValue;});console.log(sum);//306//2.合并二维数组var t

2021-01-10 13:34:04 227

原创 将ES6代码转换为ES5代码

ES6 代码转为 ES5 代码(一)单个js文件解码1 命令在项目目录中,安装Babel2 配置文件.babelrc3 安装转码规则4 配置.babelrc5 命令行转码6 控制台转码输出(不常用)7 将转码结果写入一个文件(二)整个目录转码注意:转码不是必须的,看自己的需求,转码是为了兼容低版本的浏览器Babel 是一个广泛使用的ES6转码器,可以将ES6转化为ES5##安装步骤(前提安装了Nodejs)注:没安装cnpm下面的cnpm就用npm就可以(一)单个js文件解码1 命令在项目目录中

2020-09-24 21:29:32 1381

原创 ajax实现步骤(ajax二)

ajax实现步骤1 ajax实现原理2 ajax实现步骤3 状态码3.1 xhr.readyState3.2 http状态码:4 原生的ajax_get5 原生的ajax_post6 http协议请求头7 同步异步8 获取本地json数据解析方法(二)8 获取本地json数据解析方法(二)1 ajax实现原理2 ajax实现步骤步骤:1.创建ajax对象(XMLHttpRequset)2.让ajax去发送http网络请求 请求服务器3.服务器接收网络请求4.服务器处理请求 并响应数据返回

2020-09-04 20:25:31 154

原创 Ajax介绍(一)

Ajax (一)1 ajax介绍2 什么是ajax3 应用场景4 ajax交互工作内容5 ajax优缺点1 ajax介绍术语ajax最早产生于2005年,Ajax表示Asynchronous JavaScript and XML(异步JavaScript和XML),但是它不是像HTML、JavaScript或CSS这样的一种“正式的”技术,它是表示一些技术的混合交互的一个术语(JavaScript、Web浏览器和Web服务器),它使我们可以获取和显示新的内容而不必载入一个新的Web页面。增强用户

2020-09-04 19:30:15 107

原创 php(四)详细说明

1 前后端连接操作数据1.1 原生form表单登录操作<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie

2020-09-01 22:16:00 79

原创 php(三)详细说明

php(三)详细说明1 前后端交互2 数据库操作2.1 sql语句1 前后端交互2 数据库操作2.1 sql语句1.插入语句语法:$sql = “insert into 表名(字段1,字段2,…) values (‘值1’,‘值2’,…)”;sql="insertinto表名values(值1,值2,...)";2.修改语句语法:sql = "insert into 表名 values(值1,值2,...)";2.修改语句语法:sql="insertinto表名values(值1,值2,.

2020-09-01 22:06:03 142

金狮播放器-V1.0.5.apk

金狮播放器-V1.0.5.apk

2023-05-23

模拟乒乓球自由落体,到达浏览器底端弹起,然后下落

模拟乒乓球自由落体,到达浏览器底端弹起,然后再下落,直到静止在地面,用了HTML、CSS、JavaScript

2020-08-18

实现任意个球在窗口中四处乱碰的效果

实现任意个球在窗口中四处乱碰的效果。点击按钮每次可以添加一个颜色任意的小球,采用HTML、CSS、javaScript书写。

2020-08-17

空空如也

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

TA关注的人

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