自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Node.js实践----注册-登录-个人中心(更换密码、头像)接口实现(包含mysql数据库)

1.在/router/userinfo.js模块中,新增重置密码的路由2.在/router_handler/userinfo.js模块,定义并向外共享重置密码的路由处理函数1.在/router/userinfo.js模块中,新增更换用户头像路由2./router_handler/userinfo.js模块中,定义向外共享更新头像的路由处理函数//更新用户头像的处理函数 exports . updateAvatar =(req , res) => {

2022-10-22 13:58:03 1573

原创 Node.js中前后端的的身份认证-session认证-jwt认证

为了保证JWT 字符串的安全性,防止JWT字符串在网络传输过程中被别人破解,我们需要专门定义一个加密和解密的secret秘钥当生成JWT字符串的时候,需要使用secret秘钥对用户的信息进行加密,最终得到加密好的JWT 字符串。当把JWT字符串解析还原成JSON对象的时候,需要使用secret秘钥进行解密。

2022-10-17 22:35:11 401

原创 node.js中的Express-路由-express中间件-express接口编写

在express中,路由指的是客户端请求与服务器处理函数之间的映射关系每当一个请求到达服务器之后,需要先经过路由匹配,只有匹配成功,才会调用相应处理函数。匹配的时候,会按照陆游的顺序进行匹配,若请求类型和请求的url同时匹配成功,则Express会将这次请求,转交给对应的function函数进行处理const express = require('express') const app = express() //挂载路由 app . get('/' ,(req , res) => {})

2022-10-16 13:10:10 1396 2

原创 Node.js中的npm与包

执行这个命令时,npm创建管理工具会先读取package.json中的dependencies节点,读取到记录的所有依赖包的名称和版本号之后,npm包管理工具会把这些包一次性下载到项目中。项目根目录中,创建一个叫做package.json的配置文件,即可以用来记录项目中安装了哪些包,从而方便剔除node_modules目录之后,在团队成员之间共享项目的源代码。默认情况下,使用npm指令安装的时候,会自动安装最新版本的包,如果安装指定版本的时候,通过@符号指定具体版本。将终端切换到包的根目录之后,运行。

2022-10-13 15:25:49 717 1

原创 node.js中的模块化

首先定义一个自定义模块,去挂载要暴露的属性。

2022-10-11 14:43:05 601

原创 node.js的http模块

HTTP模块是node js官方提供的,用来创建web服务器的模块。通过http模块提供的()方法,能方便的把一台普通的电脑,变成-台web服务器,从而对外提供Web资源服务。若想使用http模块创建web服务器,需要先导入: const http=require (‘http’);

2022-09-30 14:03:14 656

原创 柯里化函数

柯里化收的函数是分步执行的,第一次调用返回的是一个函数,第二次调用的时候才会进行计算,起到延时计算的作用。初步封装,通过闭包把初步参数给保存下来,然后通过获取剩下的arguments进行拼接,最后执行需要柯里化的函数。利用闭包,形成一个不销毁的私有作用域,把预先处理的内容都存在这个不销毁的作用域里面,并且返回一个函数,以后执行的就是这个函数。当一个函数有多个参数的时候,先传递一部分参数并且调用他,并且返回一个新的函数接收剩余的参数并返回结果。柯里化函数,主要体现。

2022-09-29 15:26:03 318

原创 数组扁平化的几种实现方式

使用reduce函数遍历数组,reduce方法第一个参数为最后累加的结果,第二个参数为遍历的当前项,对迭代到的当前项进行正则判断,分两种情况,当检测到的是普通项,则用concat添加进prev中,当是数组时,对该项执行扁平函数继续进行迭代。使用一个while循环遍历数组,利用some方法将数组中的数组项过滤出来,利用ES6展开运算符,将其拼接进原数组。遍历过程中,遇到是数组的项,继续调用扁平函数对其进行迭代,直到最后不是数组的一层,将数值添加进res数组中。数组扁平化是指将一个多维数组转化为一维的数组。

2022-09-27 18:49:42 256

原创 防抖与节流

搜索框实时搜索应用场景:用户持续操作时不执行,停止操作500毫秒后调用 ,其中需要注意this的指向问题,开始由于setTimeout回调函数中this指向window,需要用call改变其指向,指向inp,使用闭包封装防抖函数减少了全局变量。使用场景:滚到底部加载更多,防止用户多次滑动而发起请求,设置一个常量flag,当一次滚动回调结束,就修改flag值为false停止执行回调 ,若检测到用户仍在滚动屏幕,则再次调用回调函数。防抖是在事件停止触发一段时间后执行回调,且回调只会执行一次。

2022-09-26 23:35:49 140

原创 浅拷贝与深拷贝

这个是开发过程中最常用的方式,但是有一个缺陷就是,对于部分数据类型(undefined,function,Symbol),拷贝后的数据会丢失。会另外创建一个一模一样的对象,不仅仅对对象的引用进行复制,还会把对象的值一起拷贝,新对象跟原对象不共享内存,深拷贝后的对象和原对象相互独立,其中一个改变对另一个没有影响。可以对非嵌套对象进行深拷贝,如果对象中出现嵌套情况,那么其被嵌套对象的行为就成了浅拷贝,该方法适用于没有嵌套的情况。2.引用数据:在栈中存储对该对象的引用,真实的数据存放在堆内存中。

2022-09-25 23:09:08 592

原创 手写promise.all,promise.race方法

(1)只有p1、p2、p3的状态都变成fulfilled,p的状态才会变成fulfilled,此时p1、p2、p3的返回值组成一个数组,传递给p的回调函数。(2)只要p1、p2、p3之中有一个被rejected,p的状态就变成rejected,此时第一个被reject的实例的返回值,会传递给p的回调函数。p1、p2、p3之中有一个实例率先改变状态,p的状态就跟着改变。那个率先改变的Promise实例的返回值,就传递给p的返回值。Promise.all 方法接受一个数组作为参数,

2022-09-15 12:44:28 250

原创 Ajax学习总结

AJAX 是一种在无需重新加载整个网页的情况下,通过在后台与服务器进行少量数据交换,能够更新部分网页的技术。无需刷新获取新的数据,Ajax不是一种编程语言,而是将现有标准组合在一起使用的新方式。XML是可拓展标记语言XML 被设计为传输和存储数据,而不是显示数据HTML 旨在显示信息,而 XML 旨在传输信息例如一个描述书籍的XML文档:

2022-09-05 19:52:40 691 4

原创 手写数字识别整体流程

手写数字识别整体流程pytorch中数据加载batch:数据打乱顺序,组成一波-波的数据,批处理epoch:拿所有的数据训练一-次Dataset基类,数据集类torch.utils.data.Dataset2.两个重要的方法:a._ getitem_ (index) 能够对实例进行索引b. _ len_ : len(实例)调用实例的_ len_ 方法迭代数据集torch.utils. data.DataLoader (dataset, batch. sieshuffle)手写数字识别

2021-08-06 16:44:54 1164

原创 pytorch常用api,数据集加载,手写数字识别的模型的训练和保存,损失函数

apinn.Module 构造模型init: 自定义的方法实现的位置,调用super方法,继承父类的属性和方法forward: 完成一次向前计算的过程,//实例化模型model = Lr()// 传入数据,计算结果predict = model(x)optimizer优化器类torch.optim.SGD/Aadm2)流程:b梯度置为0, optimizer zero. grad)c反向传播,计算梯度: los.ackward()d)optimizer.step()

2021-07-25 18:58:02 184

原创 Pytorch梯度下降与反向传播的学习与实现

Pytorch梯度下降与反向传播的学习与实现1.梯度a 向量b 学习(参数更新)的方向2梯度下降3 常见的导数的计算4 反向传播算法a 计算图与反向传播1数据和操作用图来表示从后往前,计算每一层的梯度b 神经网络的计算图PyTorch完成线性回归1向前计算对于pytorch中的tensor,属性requires_grad为true,其默认值为falseb.初始化参数,进入循环(参数的梯度置为0),计算预测值c.计算Ioss, loss backward()计算梯度..

2021-07-25 17:53:10 281

原创 pytorch入门操作

深度学习的概念深度学习是机器学习的分支,以人工神经网络为架构,对数据进行特征学习的算法神经网络1.概念2.神经元a神经网络中的基础单元,相互连接,组成神经网络b一个神经元的功能是求得输入向量与权向量 的内积后,经一个非线性向量传递函数得到一个标量结果3.单层神经网络664.感知机a两层的神经网络b简单的二分类的模型,给定阈值,判断数据类型5.多层神经网络a 输入层b 输出层c 隐层:可以有很多层,每一层的神经元个数可以不确定d 全连接层:第n层和n-1层中神经元两层间都有连接

2021-07-25 17:07:13 268

空空如也

空空如也

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

TA关注的人

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