自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TCP-IP协议整理

TCP-IP网络协议整理

2022-07-29 10:07:42 664 1

原创 算法思想:分治法

算法思想-分治法

2022-07-08 15:21:26 220

原创 Nest.js框架项目初始化实践

Nest.js项目初始化配置实践,附代码

2022-06-02 14:41:30 617

原创 算法笔记 - 三数相加

算法实践 - 三数相加给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。这道题最简单的方法是3个for循环,对数组进行遍历,比较每种情况,最后输出满足条件的结果。使用这种方法的弊端可想而知,时间复杂度非常高(n^n)比较理想的做法是对数组进行排序后使用前后指针查找,以此减少时间复杂度解题步骤:(解题不唯一)1、遍历数组a) 根据元素大小判断

2022-05-30 12:51:59 399

原创 算法笔记 - 盛最多水的容器

算法实践 - 盛最多水的容器给定一个长度为 n 的整数数组 height有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。这道题最简单的方法就是寻找到数组中最大的数,然后对数组进行遍历,比较每种情况的结果但后面想想可以应用 Vue 中的 diff算法 的原理来对头尾进行一次逐步比较处理,以此减少时间复杂度解题步骤:(解题不唯一)1

2022-05-24 18:01:25 125

原创 算法笔记:无重复字符的最长子串

算法实践 - 无重复字符的最长子串给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。这道题我刚开始理解错了,无重复的字符理解成字符串了,想了很久后面才意识到没那么难解题步骤:(解题不唯一)1、初始化字符串相关变量2、循环字符串,判断前段字符是否包含现在的字符不包含则计数+1,字符串加入tempStr,包含则将计数压入数组并重新记录字符串、重新计数3、循环后运算数组最大的数值转换为结果function lengthOfLongestSubstring(s) { let

2022-05-18 10:25:42 79

原创 算法笔记:两数相加

算法实践 - 两数相加给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。解题步骤:(解题不唯一)1、判断数组长度2、数组转换数值字符串3、运算后转换为结果...

2022-05-17 11:02:58 280

原创 自研用户登录鉴权机制流程与实现过程

笔记:自研用户登录鉴权机制流程与实现过程(Node.js)背景:现在所在公司有一套自研的工程设计IDE,可以根据项目需求自主配置相关参数并应用于各个项目该项目已经正式上线,且配置都已正常使用但由于之前开发时并没有设计用户管理相关的机制,也就是说只要知道了项目地址任何人都可以进入项目修改配置,这明显具有很大的风险,需要设计开发一个用户管理的流程与机制流程构想:传统的登录鉴权与token管理主要依赖应用已有的 JWT 相关机制但因为我比较喜欢发明创造,我想自己设计一套自有的用户鉴权机制,现初步工作

2022-05-13 16:05:52 969

原创 JavaScript-Proxy & 数据劫持

JavaScript-Proxy & 数据劫持引:作为一名参与前端业务的开发者,在了解框架的同时也应了解框架背后的原理在Vue、React等框架的使用中,双向绑定是最常使用的API之一,其基本思想是使用JS实现数据劫持数据劫持:简单来说就是在数据改变时对数据进行监听(处理)其中Proxy是数据劫持的一种方案Proxy:我们可以按照如下方式定义一个 Proxyconst testProxy = new Proxy(target, handler);target:要使用 Prox

2022-05-05 15:52:18 948

原创 Vue自定义指令介绍及原理

Vue自定义指令Vue指令:在使用Vue框架进行前端开发时,我们经常会使用一些特殊指令来快速实现一些效果或功能。常见指令如:v-bind、v-if (v-else)、v-show、v-html等等都是一些比较常用的指令由于本文主要介绍自定义指令相关的一些知识,所以对于Vue自带指令就不做过多赘述了在这情况下,Vue官方也推出了一种编写自定义指令的方法。我们可以定义开发我们自定义的模版指令,来对一些特殊的需求效果功能进行开发与实现...

2022-04-06 17:08:35 2811 1

原创 基于Node.js实现OAuth2.0第三方鉴权认证(授权码模式)

实现OAuth2第三方认证(Node.js)实现背景:本人现在很长一段时间在开发一套多租的Saas平台,很多租户都想把数据同步到我们平台因此有了第三方数据同步的这么一个痛点需求,想要同步数据就必须要客户提供他们的第三方接口在本月有一家租户想进行数据同步,给我们提供了接口文档,接口需要OAuth鉴权而在之前的租户的同步流程中,租户的第三方接口并没有使用OAuth2这么一种官方的流程化认证模式所以在了解学习并开发完成后输出一篇文章记录一下OAuth2简要介绍:OAuth 2.0 是目前最流行的授

2022-03-23 18:16:01 4993

原创 JavaScript原型对象与原型链

JavaScript原型对象与原型链在JavaScript实际项目中,对象是十分重要的一个类型无论是作为数据表现的一种形式或配置成工厂模式制造实例等等,这些用途在实际项目开发中都使用得非常广泛依靠原型对象的特性可以实现一些比较模式化或适配第三方定制化的功能流程对象关于对象,在了解原型与原型链之前我们先了解一下对象的相关知识对象创建1、字面创建 const testObj = { key1: 1, key2: 2, key3: 3, objFun:function (

2022-03-23 09:45:16 1782

原创 MongoDB相关记录

curd:commondb.xxx.find、findOnedb.xxx.insert() insertOne insertManydb.xxx.update() (删除添加表示字段)db.xxx.upsert()查询操作符数值条件(>) 大于 - $gt(<) 小于 - $lt(>=) 大于等于 - $gte(<= ) 小于等于 - $lte其他条件$all例:{ field: { $all: [ value , value1 … ] } ||

2021-09-23 16:49:21 87

原创 JS事件循环机制

JS事件循环机制接触JS有过很长一段时间了,编程项目倒是做了有一些,但在一些基础方面还是有所欠缺今天将深入学习、了解一下JS事件循环(Event Loop)的机制。我们很清楚,JS是一门单线程语言。但在这么多年的设备发展中JS仍然是单核语言,说明一定有它的道理。在根据JS实际应用场景来看,其实原因也很简单:js是面对浏览器的脚本语言,主要是用于操作浏览器页面Dom树。如果进行多线程的同时,当多个进程同时操作一个dom,此时就很难确定执行优先级。因此JS作为单线程语言的现实以后应该也不会改变。

2021-05-17 15:22:10 161

原创 js平层数组转树形结构(解决数据处理后源数据篡改)

js平层数组转树形结构在前端实际开发中经常遇到数据格式转换的问题,调用后端接口后拿到的数据结构不一定是我们想要的结构比如需要树形数据,但是前端拿到的是平层,这时候就需要进行数据转换。// An highlighted blocklet list = [{ "id": 1, "name": "Level1", "pid": 0 }, { "id": 2, "name": "Level1-1", "pid": 1 }, { "id": 3,

2021-04-19 17:31:49 541

原创 前端调用手机摄像头权限进行扫码解析

前端调用手机摄像头权限进行扫码解析(demo含Vue及原生)前端调用手机摄像头权限进行扫码解析(demo含Vue及原生js写法)引子实践此时已经可以成功调用摄像头,接下来集成进Vue工程中最后前端调用手机摄像头权限进行扫码解析(demo含Vue及原生js写法)你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。引子我本人马上毕业了,现在在新单位实习前端,有个需求需要在移动Web端

2021-04-02 10:31:26 3452 11

原创 Django、Rest framework访问数据库获取数据

Django访问数据库获取数据前言一、django是什么?二、models使用1.在所创建的app文件夹下创建models.py文件2.初始化三、Serializers序列化1.在所创建的app文件夹下创建serializers.py文件2.序列化四、filter使用1.在所创建的app文件夹下创建filter.py文件2.引入models五、构造api1.在所创建的app文件夹下创建apis.py文件2.构造api视图六、设置api路由1.在所创建的app文件夹下创建urls.py文件2.设置路由总结心得

2020-08-24 17:26:26 1777 1

空空如也

空空如也

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

TA关注的人

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