
js学习
文章平均质量分 79
暴躁的BLUE
这个作者很懒,什么都没留下…
展开
-
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 · 1707 阅读 · 0 评论 -
Node.js中前后端的的身份认证-session认证-jwt认证
为了保证JWT 字符串的安全性,防止JWT字符串在网络传输过程中被别人破解,我们需要专门定义一个加密和解密的secret秘钥当生成JWT字符串的时候,需要使用secret秘钥对用户的信息进行加密,最终得到加密好的JWT 字符串。当把JWT字符串解析还原成JSON对象的时候,需要使用secret秘钥进行解密。原创 2022-10-17 22:35:11 · 463 阅读 · 0 评论 -
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 · 1539 阅读 · 2 评论 -
Node.js中的npm与包
执行这个命令时,npm创建管理工具会先读取package.json中的dependencies节点,读取到记录的所有依赖包的名称和版本号之后,npm包管理工具会把这些包一次性下载到项目中。项目根目录中,创建一个叫做package.json的配置文件,即可以用来记录项目中安装了哪些包,从而方便剔除node_modules目录之后,在团队成员之间共享项目的源代码。默认情况下,使用npm指令安装的时候,会自动安装最新版本的包,如果安装指定版本的时候,通过@符号指定具体版本。将终端切换到包的根目录之后,运行。原创 2022-10-13 15:25:49 · 800 阅读 · 1 评论 -
node.js中的模块化
首先定义一个自定义模块,去挂载要暴露的属性。原创 2022-10-11 14:43:05 · 634 阅读 · 0 评论 -
node.js的http模块
HTTP模块是node js官方提供的,用来创建web服务器的模块。通过http模块提供的()方法,能方便的把一台普通的电脑,变成-台web服务器,从而对外提供Web资源服务。若想使用http模块创建web服务器,需要先导入: const http=require (‘http’);原创 2022-09-30 14:03:14 · 730 阅读 · 0 评论 -
柯里化函数
柯里化收的函数是分步执行的,第一次调用返回的是一个函数,第二次调用的时候才会进行计算,起到延时计算的作用。初步封装,通过闭包把初步参数给保存下来,然后通过获取剩下的arguments进行拼接,最后执行需要柯里化的函数。利用闭包,形成一个不销毁的私有作用域,把预先处理的内容都存在这个不销毁的作用域里面,并且返回一个函数,以后执行的就是这个函数。当一个函数有多个参数的时候,先传递一部分参数并且调用他,并且返回一个新的函数接收剩余的参数并返回结果。柯里化函数,主要体现。原创 2022-09-29 15:26:03 · 349 阅读 · 0 评论 -
数组扁平化的几种实现方式
使用reduce函数遍历数组,reduce方法第一个参数为最后累加的结果,第二个参数为遍历的当前项,对迭代到的当前项进行正则判断,分两种情况,当检测到的是普通项,则用concat添加进prev中,当是数组时,对该项执行扁平函数继续进行迭代。使用一个while循环遍历数组,利用some方法将数组中的数组项过滤出来,利用ES6展开运算符,将其拼接进原数组。遍历过程中,遇到是数组的项,继续调用扁平函数对其进行迭代,直到最后不是数组的一层,将数值添加进res数组中。数组扁平化是指将一个多维数组转化为一维的数组。原创 2022-09-27 18:49:42 · 295 阅读 · 0 评论 -
防抖与节流
搜索框实时搜索应用场景:用户持续操作时不执行,停止操作500毫秒后调用 ,其中需要注意this的指向问题,开始由于setTimeout回调函数中this指向window,需要用call改变其指向,指向inp,使用闭包封装防抖函数减少了全局变量。使用场景:滚到底部加载更多,防止用户多次滑动而发起请求,设置一个常量flag,当一次滚动回调结束,就修改flag值为false停止执行回调 ,若检测到用户仍在滚动屏幕,则再次调用回调函数。防抖是在事件停止触发一段时间后执行回调,且回调只会执行一次。原创 2022-09-26 23:35:49 · 176 阅读 · 0 评论 -
浅拷贝与深拷贝
这个是开发过程中最常用的方式,但是有一个缺陷就是,对于部分数据类型(undefined,function,Symbol),拷贝后的数据会丢失。会另外创建一个一模一样的对象,不仅仅对对象的引用进行复制,还会把对象的值一起拷贝,新对象跟原对象不共享内存,深拷贝后的对象和原对象相互独立,其中一个改变对另一个没有影响。可以对非嵌套对象进行深拷贝,如果对象中出现嵌套情况,那么其被嵌套对象的行为就成了浅拷贝,该方法适用于没有嵌套的情况。2.引用数据:在栈中存储对该对象的引用,真实的数据存放在堆内存中。原创 2022-09-25 23:09:08 · 690 阅读 · 0 评论