自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 add(1)(2)(3)=6和add(1,2,3)=6

function add(...args) { let sum = args.reduce((t, v) => t + v, 0) function inner(...args1) { sum += args1.reduce((t, v) => t + v, 0) return inner } inner.toString = function () { // 重写toSting() 方法 ...

2021-03-23 15:28:05 235

原创 http 3次握手理解

假设:客户端为新买了手机的同学A,服务端为新买了手机的同学B,将三次握手的过程假设为A和B测试两人手机短信收发功能是不是正常的A和B都想试试自己手机的短信功能是不是正常的,所以:①A往B的手机发了一条短信,内容为:我是A,你收到了信息请给我回复666(第一次握手)②B收到了A发给他的短信,验证了自己手机收短信功能是正常的。B为了让A知道他手机发送短信功能是正常的,所以给A回复了短信:666,老铁我收到了。收到信息请给我回复888(第二次握手)③A收到了B的短信,那么A此时确认了自己手机短信收发都是正

2021-03-02 15:52:54 172

原创 [数据结构]——单调栈

上班无事,刷力扣发现了个新名词:单调栈题目:496. 下一个更大元素 I概念名字上就听的出来,单调栈中存放的数据应该是有序的,所以单调栈也分为单调递增栈和单调递减栈单调递增栈:栈中数据出栈的序列为单调递增序列单调递减栈:栈中数据出栈的序列为单调递减序列ps:这里一定要注意所说的递增递减指的是出栈的顺序,而不是在栈中数据的顺序实例现在有一组数10,3,7,4,12。从左到右依次入栈,则如果栈为空或入栈元素值小于栈顶元素值,则入栈;否则,如果入栈则会破坏栈的单调性,则需要把比入栈元素小的元素全

2020-11-06 17:11:14 112

原创 el-upload中on-change在上传多个文件多次调用解决方法

最近在做项目的过程中,有一个场景需要使用el-upload在用户选择完图片之后立即执行上传操作。这个上传用的是本地的方法不是用el的自动上传监听用户选择文件的事件只有一个on-change,具体见文档说明:由于开启了文件可多选multiple,发现用户从本地选择了n个文件的话on-change就会执行n次。因此图片上传请求也就执行了n次。el-upload部分代码解决将请求放到任务队列的最后面,先确定上传了几个文件,再执行请求看代码可知,在this中设置了一个控制上传的长度maxFileL

2020-11-05 17:18:18 9465 2

原创 es6使用整理

本文中所有实例都是摘自微信公众号大佬们的文章目录...剩余操作符es6属性增强reduce高阶用法用例(25个只选择了几个作为示例)…剩余操作符基础用法1:展开 const list = [2,3,4] const expandList = [1,...list,5] console.log(expandList) //打印得到[1,2,3,4,5]基础用法2:收集 function foo1(a,b,...c){ console.log(a,b,c); } fo

2020-08-11 14:47:32 166

原创 力扣第622题 设计循环队列

题目描述设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。你的实现应该支持如下操作:MyCircularQueue(k): 构造器,设置队列长度为 k 。Front: 从队首获取元素。如果队列为空,返回

2020-07-24 17:11:49 203

原创 力扣第378题 有序矩阵中第K小的元素

题目描述给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素。请注意,它是排序后的第 k 小元素,而不是第 k 个不同的元素。示例:matrix = [[ 1, 5, 9],[10, 11, 13],[12, 13, 15]],k = 8,返回 13。解法1:使用flat()加上sort()之后根据index进行var kthSmallest = function(matrix, k) {const list = matrix.flat().s

2020-07-20 19:11:57 162

原创 力扣17题 电话号码的字母组合

题目描述给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例①输入:“23”输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].②入:“234”输出:[“adg”,“adh”, “adi”,“aeg”,“aeh”, “aei”,“afg”,“afh”, “afi”,“bdg”,“bdh”, “bdi”,“beg”,“beh”, “bei”,“

2020-07-20 19:11:11 181

原创 力扣914题 卡牌分组

题目描述给定一副牌,每张牌上都写着一个整数。此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组:每组都有 X 张牌。组内所有的牌上都写着相同的整数。仅当你可选的 X >= 2 时返回 true。解题思路获取各不同的数的数组长度,并获取数组长度们的最大公约数,如果公约数g>=2,则返回truevar hasGroupsSizeX = function(deck) { var map = new Map() deck.forEach(ite

2020-07-20 19:10:40 136

原创 力扣第93题 复原IP地址

题目描述给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。有效的 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成),整数之间用 ‘.’ 分隔。当字符串长度小于4或者大于12时,返回[]示例1:输入: “25525511135”输出: [“255.255.11.135”, “255.255.111.35”]解题思路:使用递归求解:将数字依次拆成1位数、2位数和3位数进行组合,当剩余数字满足条件时,继续递归// 参考大佬代码,关键点:数组深拷贝,检查传入方法

2020-07-20 19:07:23 314

原创 力扣第164题 最大间距

题目描述给定一个无序的数组,找出数组在排序之后,相邻元素之间最大的差值。如果数组元素个数小于 2,则返回 0。示例1:输入: [3,6,9,1]输出: 3解释: 排序后的数组是 [1,3,6,9], 其中相邻元素 (3,6) 和 (6,9) 之间都存在最大差值 3。示例2:输入: [10]输出: 0解释: 数组元素个数小于 2,因此返回 0。解法1:使用sort()之后循环获取各值之间的差值var maximumGap = function(nums) { if(nums.l

2020-07-16 20:25:25 227

原创 力扣第922题 按奇偶排序数组 II

题目描述给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数。对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数;当 A[i] 为偶数时, i 也是偶数。你可以返回任何满足上述条件的数组作为答案。示例:输入:[4,2,5,7]输出:[4,5,2,7]解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。解法1:预置偶数even和奇数odd的索引,当i为偶数,list[even] = nums[even],even+2;为奇数时同样操作var sor

2020-07-16 20:18:55 197

原创 力扣第215题 数组中的第K个最大元素

题目描述在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4解题思路:思路1:首先将数组从大到小排序,再根据k值获取索引var findKthLargest = function(nums, k) { nums = nums.sort((a,b)=>{

2020-07-16 20:08:57 283

原创 v-slot和slot、slot-scope之间相互替换

如果组件文档里面用的是v-slot,而你用的是vue2.6之前的版本,则需要替换v-slot:所以有两种替换方式,注意看两块v-slot有啥不同,你就知道你该怎么用slot-scope和slot来替换文档中的v-slot了v-slot使用方式1:<template v-slot:operate="{ row }"><template>则可替换为:<template slot="operate" slot-scope="{ row }"></template

2020-05-28 15:26:11 1558

原创 VUE activated,deactivated使用

VUE activated,deactivated使用项目中keepalive用得不多,记录一下以免遗忘。页面第一次进入,钩子的触发顺序created-> mounted-> activated,退出时触发deactivated。当再次进入(前进或者后退)时,只触发activated。事件挂载的方法等,只执行一次的放在 mounted 中;组件每次进去执行的方法放在 activated 中, activated 中的不管是否需要缓存多会执行。所以当页面设置了keepalive的时候,要想

2020-05-13 17:40:25 3632

空空如也

空空如也

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

TA关注的人

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