自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue-scoped

当在 style 标签中定义了 scoped 时,scoped 会在 DOM 结构及 css 样式上加上唯一性的标记 data-v-xxx 属性,从而实现组件样式私有化,不会造成样式全局污染。

2022-08-26 14:24:32 776 2

原创 React之类组件项目重构为函数组件

1、函数组件数组件接收一个单一的 props 对象并返回了一个React元素2、类组件无论是使用函数或是类来声明一个组件,它决不能修改它自己的 props。所有 React 组件都必须是纯函数,并禁止修改其自身 props 。React是单项数据流,父组件改变了属性,那么子组件视图会更新。属性 props 是外界传递过来的,状态 state 是组件本身的,状态可以在组件中任意修改组件的属性和状态改变都会更新视图。3、两者区别函数组件的性能比类组件的性能要高,因为类组件使用的时候要

2022-03-04 15:27:38 1426

原创 Promise、async/await使用场景

1.Prommise1.Promis是做什么的?异步编程的解决方案,一种很常见的场景就是网络请求。Promise 对象代表一个异步操作,有三种状态:pending: 初始状态,不是成功或失败状态。fulfilled: 意味着操作成功完成。rejected: 意味着操作失败。优点:有了 Promise 对象,就可以将异步操作以同步操作的流程表达出来,避免了层层嵌套的回调函数。缺点:一旦新建它就会立即执行,无法中途取消。如果不设置回调函数,Promise 内部抛出的错误,不

2022-03-02 15:58:25 9886 1

原创 回流(reflow)与重绘(repaint)

介绍下回流(reflow)与重绘(repaint)1.了解浏览器的渲染机制浏览器采用流式布局模型。首先浏览器会将HTML解析成DOM,把CSS解析成CSSOM,把CSSOM与DOM结合产生render tree。有了render tree之后,我们知道了节点样式,然后浏览器会计算节点的位置,然后把节点绘制到页面上。总结:回流一定会引起重绘,重绘不一定会引起回流。2.回流当我们render tree中的一些元素的结构或者尺寸发生改变,浏览器会重新渲染部分或者全部的文档流,这个过程就叫做回

2022-03-02 15:54:34 1016 3

原创 leetcode-题24:两两交换链表中的节点

题24:两两交换链表中的节点给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]提示:链表中节点的数目在范围 [0, 100] 内0 <= Node.val <= 100解题思路:首先 需要一个dummy节点让dummy.n

2022-03-01 10:27:18 212

原创 leetcode-题20:有效的括号

题20:有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例 2:输入:s = "()[]{}"输出:true示例 3:输入:s = "(]"输出:false示例 4:输入:s = "([)]"输出:false示例 5:输入:s = "{[]}"输出:true提示:1

2022-03-01 10:25:53 5551

原创 leetcode-题19:删除链表的第N个节点

题19:删除链表的第N个节点给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]提示:链表中结点的数目为 sz1 <= sz <= 300 <= Node.val <= 1001 &lt

2022-03-01 10:24:10 133

原创 leetcode-题5:三数之和

题5:三数之和给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。**注意:**答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]提示:0 <= nums.length <=

2022-03-01 10:21:56 6317

原创 leetcode-题4:最长回文子串

题4:最长回文子串给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。示例 2:输入:s = "cbbd"输出:"bb"示例 3:输入:s = "a"输出:"a"示例 4:输入:s = "ac"输出:"a"提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成解题思路:处理边界情况,如果字符长度小于2,则直接返回原字符

2022-03-01 10:21:04 77

原创 leetcode-题3:无重复字符的最长子串

题3:无重复字符的最长子串给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: s = "pwwkew"输出: 3解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。 请注意,你的答案必须

2022-03-01 10:20:03 96

原创 防抖和节流

防抖节流1.防抖1.1 定义防抖(debounce):触发高频事件后 n 秒内函数只会执行一次,如果 n 秒内高频事件再次被触发,则重新计算时间(让函数在停止触发事件后的一段时间再执行)1.2 解决的问题:这可以使用在一些点击请求的事件上,避免因为用户的多次点击向后端发送多次请求。举例:就好像在百度搜索时,每次输入之后都有联想词弹出,这个控制联想词的方法就不可能是输入框内容一改变就触发的,他一定是当你结束输入一段时间之后才会触发。1.3 案例:滚动条function debo

2022-03-01 10:14:34 105

原创 leetcode-2.两数相加

2.两数相加1.题目给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9

2022-03-01 10:09:11 70

原创 leetcode-1.两数之和

题一:两数之和示例1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例2:输入:nums = [3,2,4], target = 6输出:[1,2]解题思路:创建一个mapfor循环遍历nums数组用target减nums[i](用来计算那个数字能跟减去的数字相加得到target)检查map里有没有这个数,如果有则返回结果,如果没有则把num[i

2022-03-01 10:02:51 210

原创 常见的网络攻击原理

常见的网络攻击原理1.XSS1.1什么是XSS攻击?XSS攻击:跨站脚本攻击。(重点在于脚本的执行)原理:恶意攻击者在web页面中会插入一些恶意的script代码。当用户浏览该页面的时候,那么嵌入到web页面中script代码会执行,因此会达到恶意攻击用户的目的。XSS攻击分类:反射型、存储型、及 DOM-based型。 反射性和DOM-baseed型可以归类为非持久性XSS攻击。存储型可以归类为持久性XSS攻击。1.2.XSS攻击分类1.2.1.反射型XSS原理:反射性xss一般指

2022-03-01 09:52:00 8796

原创 更换butterfly主题后报错:extends includes/layout.pug block content #recent-posts.recent-posts include includ

解决办法:1.在博客目录下打开git bash here,输入命令:npm install --save hexo-renderer-jade hexo-generator-feed hexo-generator-sitemap hexo-browsersync hexo-generator-archive2.hexo clean(清除缓存)3.hexo g(生成静态文件)4.hexo s5.hexo d(部署到GitHub上)然后问题就解决啦...

2021-04-13 16:14:14 788

原创 动画函数代码片段

function animate(obj, target, callback) { // console.log(callback); callback = function() {} 调用的时候 callback() // 先清除以前的定时器,只保留当前的一个定时器执行 clearInterval(obj.timer); obj.timer = setInterval(function() { // 步长值写到定时器的里面 // 把我们

2020-12-23 16:19:23 90

原创 git-本地库管理远程库(GitHub)

**1 本地库和远程库**本地库就是开发者将文件提交到Git仓库,此时Git仓库文件还在本地电脑。通过Git仓库可以管理GitHub远程仓库,例如Git仓库可以推送到GitHub仓库上,共享到社区,其他开发者可以看到这个仓库,然后可以提出Bug和改进建议达到共同开发的目的。(1) 建立本地库开发者A新建develop_A文件夹,然后通过git命令初始化,接着新建test_hello.cpp文件提交到本地库。如下图所示:(2) 建立远程库开发者A在GitHub上新建一个项目(teamwork)

2020-11-07 12:13:19 289

原创 git学习笔记(1)

1 Git是什么Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Linus Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper 。(以上均来自百度百科)2.Git工作流程Git工作流程有:(1) 在工作目录中添加、修改、删除文件;(2) 将需要进行版本管理的文件放入暂存区;(3) 将

2020-11-07 11:51:03 155

原创 使用icomoon字体图标库无法显示的问题

如果我直接打开html文件,而不使用本地服务器(localhost)打开,图标就可以正常显示,可能原因是,本地服务器没有这些字体文件

2020-10-10 21:08:22 1870

原创 笔记---类名使用的注意事项

注意定义类名时前面尽量不要加"点."如果加了点,修改样式时不要记多加一个点。

2020-09-19 17:21:04 182

原创 上传项目到GitHub

windows使用git上传代码到Github**前言:**初学者将代码上传到GitHub.Git下载与安装(Windows系统):点击可了解Git下载具体步骤连接1、创建仓库,配置ssh没注册的可以先去官网进行注册,注册过的按以下步骤创建一个GitHub的仓库。1.建仓库首先要创建一个github账号,大家用邮箱即可注册![首先新建一个仓库]2.新建一个仓库配置ssh秘钥 这个操作就是让我们的电脑和github进行一个绑定验证 1. 右键->Git Bash Here 2. 需要配

2020-08-11 09:51:08 180

空空如也

空空如也

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

TA关注的人

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