Vicky沛沛
码龄6年
  • 204,994
    被访问
  • 350
    原创
  • 146,338
    排名
  • 120
    粉丝
关注
提问 私信

个人简介:越努力 越幸运 && 致力成为auto driving行业优秀的前端喵~

  • 加入CSDN时间: 2016-03-13
博客简介:

沛沛呀、

博客描述:
some birds are not meant to be caged、
查看详细资料
  • 4
    领奖
    总分 652 当月 22
个人成就
  • 获得114次点赞
  • 内容获得122次评论
  • 获得584次收藏
创作历程
  • 102篇
    2021年
  • 71篇
    2020年
  • 153篇
    2019年
  • 26篇
    2018年
成就勋章
TA的专栏
  • 前端自我修养进阶
    78篇
  • 查漏补缺系列
    2篇
  • Review系列
    11篇
  • 基础巩固
    49篇
  • Uniapp
    6篇
  • react
    13篇
  • react native再回顾系列
    8篇
  • 个人博客
    4篇
  • 项目总结
    2篇
  • 实战
    2篇
  • nodejs
    10篇
  • 响应式布局
    4篇
  • webrtc
    32篇
  • koa
    2篇
  • ES6复习
    1篇
  • 工具
    2篇
  • 微信小程序
    2篇
  • 前端自我修养
    1篇
  • 软件设计项目管理
    5篇
  • gitbook
    2篇
  • 知识图谱
    1篇
  • PHP基础
    9篇
  • node.js基础
    2篇
  • JavaScript基础
    8篇
  • 数据库优化
    1篇
  • nginx
    2篇
  • 无人驾驶
    2篇
  • 全栈
    1篇
  • 前端
    24篇
  • react native
    21篇
  • Error Fix
    7篇
  • ros
    3篇
  • vue
    1篇
  • electron
    9篇
兴趣领域 设置
  • 前端
    javascriptcssreact.jses6webpack前端框架
  • 后端
    node.js
  • 网络
    https
  • 小程序
    小程序
  • 职场和发展
    面试
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

React从Class方式转Hooks

文章目录React Hooks前言Why Hooks ?For ClassFor FunctionClass & Hooks 对比React Hooks前言之前工作三年中一直在用class方式去写前端功能页面这些,其实接触hooks也是有一定时间了。在第一次接触的时候应该是看了一门关于electron+react的项目的课程的时候。当时主要是去看electron,所以对hooks没有特别的关注。也有可能是长期以来对class的熟悉,当时对hooks这种函数式的写法也有一些抵触。但是由于业内对h
原创
发布博客 2021.09.28 ·
559 阅读 ·
3 点赞 ·
0 评论

算法&数据结构

文章目录数组单链表双链表数组查询O(1)插入平均O(n)删除平均O(n)单链表插入和删除非常多的情况,改善插入和删除单链表的变形,有头指针和尾指针,很方便的知道头部和尾部在哪链表的常见操作,插入和删除。插入和删除O(1)查找O(n)双链表有前驱也有后继,查询链表的数据的时候更加方便...
原创
发布博客 2021.09.22 ·
56 阅读 ·
1 点赞 ·
1 评论

DDD领域驱动开发

文章目录DDD(Domain Driving Design)领域驱动开发架构对比微服务的问题战略设计(业务层面-业务架构)战术设计(技术层面-系统架构):DDD和微服务DDD(Domain Driving Design)领域驱动开发架构对比单机架构:数据驱动架构集中式架构:面向对象的方式(三层架构)分布式微服务架构:应用之间解藕,解决单体用扩展性和弹性伸缩能力不足问题微服务的问题微服务粒度怎样拆分边界是什么DDD 核心思想是通过领域驱动设计方法定义领域模型
原创
发布博客 2021.09.15 ·
2333 阅读 ·
1 点赞 ·
0 评论

TS基础知识

文章目录TS基本类型编译选项面向对象类:对象的模型(包含:属性&方法)TS基本类型如果变量的声明和赋值是同事进行,ts可以自动给变量进行类型检测也可以直接使用字面量进行类型声明(但是字面量赋值之后就不能再修改了)//也可以直接使用字面量进行类型声明,但是字面量赋值之后就不能再修改了let a:10;let b:'fa'|'ma'; //枚举:这样的话b就可以赋值为fa或者mab = 'fa'b = 'ma'可以使用|连接多个类型。联合类型(限制变量在某几个值之
原创
发布博客 2021.08.23 ·
295 阅读 ·
1 点赞 ·
0 评论

react合成事件

react合成事件是什么?用了很久都没有踩合成事件的坑,于是第一次react合成事件这个词出现在我视野中,我在脑袋中搜索,居然完全没有一点印象。于是赶紧去看了一下,React合成事件。简而言之:react内部自己通过事件冒泡实现了一套事件触发机制。????那么合成事件和原生事件的区别是什么?怎样区分呢?原生事件: 在 componentDidMount生命周期里边进行addEventListener绑定的事件合成事件: 通过 JSX 方式绑定的事件,比如 onClick={() =>
原创
发布博客 2021.07.29 ·
287 阅读 ·
2 点赞 ·
0 评论

手写Promise的实现

手写Promise的实现(then的链式调用)promise特点分析:Promise参数函数会立即执行promise在then的回调函数中可以拿到resolve的值promise可以有多个then并且依次链式调用执行promise可以嵌套多个then,并且then中也是可以返回Promiseresolved状态的promise调用then会立即执行二次调用resolve不会产生影响实现思路promise是一个对象,一般通过new进行实例化promise的then是可以链式调用的,因
原创
发布博客 2021.07.20 ·
102 阅读 ·
1 点赞 ·
0 评论

【查漏补缺系列】前端基础补充

主要是根据自己没有掌握好以及还没有了解的部分进行补充。github地址。github会实时更新,可以下载用markdown查看。1、require和import的区别规范:require是node的commonjs规范;import是ES6的模块化规范可否动态:require支持动态导入;import不支持动态导入导入方式:require输出的是一个值的拷贝;import输出的是一个值的引用位置:import可以在import模块引入之前使用,但是require只能在引用之后使用是否可以在模块
原创
发布博客 2021.07.19 ·
73 阅读 ·
0 点赞 ·
0 评论

【Review系列】三大基础排序

冒泡排序数组当前项跟后一项进行对比,如果当前项比后一项大那么两项交换位置let ary = [23,31,4,7,3,9]function bubble(ary){ for(let i = 0;i<ary.length-1;i++){ //控制比较轮数 for(let j = 0;j<ary.length-1-i;j++){ //每一轮比较的次数 ary[j]>ary[j+1]?[ary[j],ary[j+1]]=[ary[j+1],ary[j]]:nul
原创
发布博客 2021.06.23 ·
35 阅读 ·
1 点赞 ·
1 评论

【Review系列】把公司1-12个月的销售额存在对象中

把公司1-12个月的销售额存在对象中方法一let obj = { 1:222, 3:444, 5:345}let arr = new Array(12).fill(null).map((item,index)=>{ return obj[index+1]||null})方法二obj.lengthlet obj = { 1:222, 3:444, 5:345}obj.length = 13 //将其长度强行赋值到13,那么它有13位并且不对应
原创
发布博客 2021.06.21 ·
46 阅读 ·
1 点赞 ·
1 评论

【Review系列】旋转数组

旋转数组截取拼接function rotate(k){ //参数处理 if(k<0 || k === 0 || k === this.length){return this;} if(k > this.length){k = k%this.length} //旋转数组 //return arr.slice(-k).concat(arr.slice(0,arr.length-k)) //方法一:slice(-k)从后面取k个 //return [...this.spli
原创
发布博客 2021.06.21 ·
28 阅读 ·
0 点赞 ·
0 评论

【Review系列】求两个数组的交集

求两个数组的交集let num1 = [1,4,2,6,9]let num2 = [3,4,7,2]//方法一let arr = []for(let i = 0;i < num1.length;i++){ let item1 = num1[i] for(let j = 0;j<num2.length;j++){ let item2 = num2[j] if(item1 === item2){ arr.push(item1) num1[i
原创
发布博客 2021.06.21 ·
28 阅读 ·
0 点赞 ·
0 评论

【Review系列】函数柯里化及其应用

请实现一个函数满足以下功能add(1) //1add(1)(2) //3add(1)(2)(3) //6add(1)(2,3) //6add(1,2)(3) //6add(1,2,3) //6函数柯里化,利用闭包的保存的特性,实现预先处理的方法function currying(fn,len){ //可执行多少次 len = len||fn.length; //函数的length是获取函数的形参个数 return function(...arg..
原创
发布博客 2021.06.18 ·
43 阅读 ·
0 点赞 ·
0 评论

【leetcode】每日leetcode一题

其实有些思路算法挺有意思的,决定开始刷刷leetcode,先从简单的题开始吧!非最优解,仅记录分享6.16/** * @param {number[]} nums * @param {number} target * @return {number[]} */var twoSum = function(nums, target) { let result = null for(let i =0;i<nums.length-1;i++){ for(let
原创
发布博客 2021.06.17 ·
41 阅读 ·
0 点赞 ·
0 评论

【Review系列】前端经典题之对象调用数组方法

写出以下的obj的值:let obj = { 2:3, 3:4, length:2, push:Array.prototype.push}obj.push(1) //obj[2] = 1obj.push(2) //obj[3] = 2console.log(obj)分析://模拟数组的push方法Array.prototype.push = function(val){ this[this.length] = val; //往数组中push一个val,也就
原创
发布博客 2021.06.16 ·
35 阅读 ·
0 点赞 ·
0 评论

【Review系列】正则

正则编写一条规则,用来验证6-16位的字符串,必须同时包含有大写字母小写字母字符串和数字正向预查:要匹配的字符串必须满足这个条件负向预查:要匹配的字符串必须不符合这个条件//要求cainiao8才能匹配过,以下正则只有cainiao8才符合条件,但是设置的条件是不参与捕获结果的var reg = /cainiao(?=8)///指的是 smileyqp后面必须是yyyy才符合条件,但是yyyy不参与捕获的结果var reg1 = /smileyqp(?=yyyy)/var reg =
原创
发布博客 2021.06.16 ·
19 阅读 ·
0 点赞 ·
0 评论

【Review系列】系列数组扁平化

数组扁平化编写一个程序将数组let arr=[[2,4,1,5],[8,5,2],[23,45,12,[29,3,5,[1,4,67]],10]扁平化,并去除其中重复部分,最终得到一个升序且不重复的数组ES6 :flat 、Set、sortlet arr=[[2,4,1,5],[8,5,2],[23,45,12,[1,45,35]],10]arr = arr.flat(Infinity)arr = Array.from(new Set(arr))arr = arr.sort((a,b)=
原创
发布博客 2021.06.16 ·
22 阅读 ·
0 点赞 ·
0 评论

【Review系列】面向对象new

面向对象new(function(){ function _new(){ //let obj = Object.create(this.prototype)下面两句的简写 let obj = new Object(); obj.__proto__ = this.prototype; obj.apply(this,arguments) return obj; } Function.prototype._new = _new;})()...
原创
发布博客 2021.06.16 ·
25 阅读 ·
0 点赞 ·
0 评论

【Review系列】数组合并

数组合并得到["A", "A1", "A2", "B", "B1", "B2", "C", "C1", "C2", "D", "D1", "D2"]let ary1 = ['A1','A2','B1','B2','C1','C2','D1','D2']let ary2 = ['A','B','C','D']let arr = ary1.concat(ary2).sort((a,b)=>{ return a.localeCompare(b)})console.log(arr) //[
原创
发布博客 2021.06.16 ·
57 阅读 ·
0 点赞 ·
0 评论

【基础Review系列】前端基础Review

Review题目合集持续更新ing~前端基础github地址。README02.md可以下载到typora中打开,会有整个大纲目录显示(github中markdown目录快捷生成方式不现实,之后可能会想办法生成贴过来,暂时不做相关处理)前端基础gitbook地址。README.md中会实时更新进度内容。gitbook中考虑整个学完整理完成之后,再去统一处理发布,敬请期待!gitbook版本可建议后期碎片化时间进行复习使用。前端基础csdn地址。CSDN博客专栏前端自我修养进阶中,也会一篇一篇实时更
原创
发布博客 2021.06.10 ·
148 阅读 ·
2 点赞 ·
3 评论

基本设计模式

文章目录代理模式观察者模式(发布订阅模式)装饰器设计模式:针对特定的场景,在软件设计过程中常见的代码范式(通用解决方案,与语言无关)。观察者模式(麦当劳点餐)代理模式(花店送花)装饰器:可以允许向一个对象添加新的功能,却不改变原有对象。比如:给文件上传功能添加日志输出功能react中redux的@connect代理模式特点:代理对象与真实对象有相同的行为真实对象->代理对象->用户花店送花:男孩让花店送花给女孩//定义女孩对象var Girl = funct
原创
发布博客 2021.06.08 ·
36 阅读 ·
0 点赞 ·
0 评论
加载更多