<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[MPFLY的博客]]></title><description><![CDATA[这是我的个人博客，会收录技术类、生活总结类的文章。]]></description><link>https://blog.csdn.net/MPFLY</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; MPFLY]]></copyright><item><title><![CDATA[常用的处理文件的方法]]></title><link>https://blog.csdn.net/MPFLY/article/details/155283442</link><guid>https://blog.csdn.net/MPFLY/article/details/155283442</guid><author>MPFLY</author><pubDate>Wed, 26 Nov 2025 20:49:25 +0800</pubDate><description><![CDATA[【代码】常用的处理文件的方法。]]></description><category></category></item><item><title><![CDATA[关于refresh token的总结]]></title><link>https://blog.csdn.net/MPFLY/article/details/123199084</link><guid>https://blog.csdn.net/MPFLY/article/details/123199084</guid><author>MPFLY</author><pubDate>Tue, 01 Mar 2022 10:07:55 +0800</pubDate><description><![CDATA[refresh_token使用说明和记录]]></description><category></category></item><item><title><![CDATA[通过阅读axios源码重新学习AJAX和XMLHttpRequest]]></title><link>https://blog.csdn.net/MPFLY/article/details/118575022</link><guid>https://blog.csdn.net/MPFLY/article/details/118575022</guid><author>MPFLY</author><pubDate>Thu, 08 Jul 2021 15:40:51 +0800</pubDate><description><![CDATA[今天单位活儿比较少，遂打开了axios源码阅读了一番。
照着axios的文档进行阅读，事半功倍。一边看源码，一边又顺着把AJAX和XMLHttpRequest看了一遍，以下是我的收获。

由于XMLHttpRequest很长，我们一般将其简称为XHR，下面我将会使用简称进行书写。

1. axios和AJAX的区别
在写详细的文章之前，可能很多同学不是很清楚axios和ajax的区别（清楚的同学可略过~????），下面我们来简单讨论一下。

AJAX = Asynchronous JavaScript an]]></description><category></category></item><item><title><![CDATA[promise和async-await的区别]]></title><link>https://blog.csdn.net/MPFLY/article/details/118516490</link><guid>https://blog.csdn.net/MPFLY/article/details/118516490</guid><author>MPFLY</author><pubDate>Tue, 06 Jul 2021 11:11:22 +0800</pubDate><description><![CDATA[今天手机上的Boss直聘突然弹出个消息： “promise和async-await有什么区别?”。
打开手机后，看了各路大神各抒己见，于是自己也找了找资料，以下是自己的总结和各路大神的回答。
1. 关于async-await的
以下均摘自MDN

async函数是使用async关键字声明的函数。 async函数是AsyncFunction构造函数的实例， 并且其中允许使用await关键字。async和await关键字让我们可以用一种更简洁的方式写出基于Promise的异步行为，而无需刻意地链式调用promi]]></description><category></category></item><item><title><![CDATA[Vue全局组件的注册与使用]]></title><link>https://blog.csdn.net/MPFLY/article/details/118439163</link><guid>https://blog.csdn.net/MPFLY/article/details/118439163</guid><author>MPFLY</author><pubDate>Sat, 03 Jul 2021 13:51:33 +0800</pubDate><description><![CDATA[今天我们来探究一下Vue全局组件的注册与使用。基于个人的开发经验，全局组件相比局部组件来说，使用的频率还是低不少的。所以在全局组件的使用上，我个人来说比较模糊，遂打算一探究竟，并记录下来。
第1步
我们先写一个全局组件，以供使用。
// now-time.vue
&lt;template&gt;
  &lt;div&gt;
    当前时间为:{{ nowTime }}
  &lt;/div&gt;
&lt;/template&gt;

&lt;script&gt;
export default {
  d]]></description><category></category></item><item><title><![CDATA[js新特性]]></title><link>https://blog.csdn.net/MPFLY/article/details/118416494</link><guid>https://blog.csdn.net/MPFLY/article/details/118416494</guid><author>MPFLY</author><pubDate>Fri, 02 Jul 2021 15:22:28 +0800</pubDate><description><![CDATA[1. Promise
MDN文档
我们首先定义一个promise方法
function setName(newName) {
  return new Promise((resolve, reject) =&gt; {
    setTimeout(() =&gt; {
      if(newName === 'jack'){
        resolve(newName)
      }else{
        reject(`【${newName}】 is not a good name, sor]]></description><category></category></item><item><title><![CDATA[注意！MELDA山地自行车骗局]]></title><link>https://blog.csdn.net/MPFLY/article/details/102684921</link><guid>https://blog.csdn.net/MPFLY/article/details/102684921</guid><author>MPFLY</author><pubDate>Tue, 22 Oct 2019 16:18:31 +0800</pubDate><description><![CDATA[注：以下叙述是我的亲身经历，如有雷同，望赶紧擦亮自己的双眼，避免再次上当！

01
上个周日，早上11点多。我上街买菜准备做午饭，顺路去菜鸟驿站取快递。
刚在菜市场买完菜准备走到菜鸟驿站，有个大概35-40岁的中年男人走上前来，问我要不要山地自行车，普通话还算正宗，所以听不出是哪里的人。
这个人介绍自己是跑物流的，刚刚拉了一单山地车，由于在装货的时候多装了一辆自行车，所以想要自己把这台山地车卖掉...]]></description><category></category></item><item><title><![CDATA[我被第一次喊【双手抱头！！！】]]></title><link>https://blog.csdn.net/MPFLY/article/details/102476901</link><guid>https://blog.csdn.net/MPFLY/article/details/102476901</guid><author>MPFLY</author><pubDate>Thu, 10 Oct 2019 11:00:15 +0800</pubDate><description><![CDATA[写这篇文章的主要原因是想分享一下自己上个月的遭遇。
之前经常会在电视里的法制节目里看到，一群或便衣或警服的警察在楼梯口整装待发，然后带头的人员会一脚踹开房门，大喊“双手抱头”的场景。
总觉得这样的场景只要我自己不去做违法乱纪的事儿就应该不会遇到，直到上个月中秋节的前一天，也就是9月12日。
01
那天是中秋小长假的最后一个工作日，虽然内心早已奔向自由，但还是得熬完这最后一天。
大概早上的9点40分...]]></description><category></category></item><item><title><![CDATA[Hexo使用Next主题的配置]]></title><link>https://blog.csdn.net/MPFLY/article/details/100008928</link><guid>https://blog.csdn.net/MPFLY/article/details/100008928</guid><author>MPFLY</author><pubDate>Thu, 22 Aug 2019 10:10:51 +0800</pubDate><description><![CDATA[1. 博客底部标签样式
只需要修改模板/themes/next/layout/_macro/post.swig，搜索 rel="tag"&gt;#，将 # 换成&lt;i class="fa fa-tag"&gt;&lt;/i&gt;
2. 文章结束标志
在路径 \themes\next\layout\_macro 中新建 passage-end-tag.swig 文件,并添加以下内容：
&lt;...]]></description><category></category></item><item><title><![CDATA[if 弱判断总结]]></title><link>https://blog.csdn.net/MPFLY/article/details/99866118</link><guid>https://blog.csdn.net/MPFLY/article/details/99866118</guid><author>MPFLY</author><pubDate>Tue, 20 Aug 2019 17:45:39 +0800</pubDate><description><![CDATA[1. if 语句会自带一个弱类型的判断，下面我们来看看他的判断规则。
空字符串
let a = ''
if(a){
	console.log('true')
}else{
	console.log('false')
}
// false

null
let a = null
if(a){
	console.log('true')
}else{
	console.log('false')
}
// ...]]></description><category></category></item><item><title><![CDATA[《人类简史》笔记]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682996</link><guid>https://blog.csdn.net/MPFLY/article/details/99682996</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:52:00 +0800</pubDate><description><![CDATA[第一章


现代人的祖先是智人。


人类进化出容量大的大脑，可以更好的“思考”。但是到目前为止，人类为什么会进化出大容量的大脑，我们也并不知道。
庞大的大脑是个庞大的负担：

大脑结构脆弱，需要有头骨保护。
即使在休息的时候，大脑依旧会消耗大量能量。



人类直立行走
优点：

获得更大更远的视野
解放手，让手可以发挥其他用途

缺点：

人体结构上不合理，时间长之后会受到背痛、脖子僵硬的困扰...]]></description><category></category></item><item><title><![CDATA[机油知识总结]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682977</link><guid>https://blog.csdn.net/MPFLY/article/details/99682977</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:51:04 +0800</pubDate><description><![CDATA[机油标号
举例：SN 0W 40
想选对机油，就要先了解机油，每桶机油包装都明显的印着机油的标号，抛开品牌，我们以SN 0W-40的机油来举例。前面的SN。这是美国石油协会的标准等级，简称API。S代表汽油发动机用油，如果这个字母变成C，那么则代表是柴油发动机用油，千万别加混了！！！
有时还会S和C一起出现，那么就代表汽油发动机和柴油发动机都可以使用，不过这种并不多见。S后边的N，则表示的是机油等...]]></description><category></category></item><item><title><![CDATA[车辆保险小记]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682950</link><guid>https://blog.csdn.net/MPFLY/article/details/99682950</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:50:00 +0800</pubDate><description><![CDATA[现在我们在买车的时候，4S店一般都会强制在他的店里让你买保险，而且又是新车，大部分人都会买全险比较稳妥。所以第一年的保险你大可丢给4S店来帮你办理，你只需要付钱就好。
可是到了第二年，你的保险即将到期，需要续保了，那就只能自己动手查询和办理了。
以下是办理保险业务时需要注意的点，以及一些概念的解读，动手做个记录。
1. 在什么时候可以续保

目前绝大部分地区可提前90天续保
广东地区可提前30天保...]]></description><category></category></item><item><title><![CDATA[人生第一次和第二次车祸]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682906</link><guid>https://blog.csdn.net/MPFLY/article/details/99682906</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:47:59 +0800</pubDate><description><![CDATA[写下文章的日子是5月15日，想起那一天，仍然历历在目~
从去年5月20日买下车，我几乎天天开车。除了在刚刚开上车的第一个月里，前保险杠被自己蹭了几回，我一直没有出过任何的交通事故。但是，那一天似乎从一开始就不对劲了，仿佛陷入了深渊。
早上 08：28
那是2019年5月7日，周二，天气晴朗☀️。早早起床的我如往常一般开车去上班。就在我发动车子开起来不到2分钟，我看到一辆摩托车以并不慢的速度向我“滑...]]></description><category></category></item><item><title><![CDATA[最近随想]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682846</link><guid>https://blog.csdn.net/MPFLY/article/details/99682846</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:45:47 +0800</pubDate><description><![CDATA[最近几日，公司不是特别的忙。年后又经历了半个月的奋斗，【跨境电商】第二版终于是又上线了，好在我在年前就已经把重要的工作处理的差不多了，所以年后的这半个多月，也并没有怎么加班，因为有了的第一版的经验，项目上线还算是顺遂。只是后台的系统换了技术，我转而来开发【投放页面】，因为页面比较少，以我的技术，完成起来还是比较顺手的，没有特别大的难题，所以也就成全了我最近的空闲。
这也算是我的博客中的第一篇“随想...]]></description><category></category></item><item><title><![CDATA[使用伪类来实现类似微信群聊的头像样式]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682822</link><guid>https://blog.csdn.net/MPFLY/article/details/99682822</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:43:10 +0800</pubDate><description><![CDATA[最近看了一篇张鑫旭的博客，觉得人家的想法特别奇特，很值得学习。遂借鉴学习并记录一下，以备不时之需。
原文地址：伪类匹配列表数目实现微信群头像CSS布局的技巧
简介
我们在使用微信群聊的时候，群聊的头像，是所在在群聊中的人的头像的一个组合。随着群聊成员数量的不同，群聊头像的样式也不一样。下面就是使用伪类来实现这样一个功能，让其样式随着数量的变化而变化。
以下是代码：
ul{
  padding: 0...]]></description><category></category></item><item><title><![CDATA[PC端图片预览——galpop.js]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682770</link><guid>https://blog.csdn.net/MPFLY/article/details/99682770</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:41:26 +0800</pubDate><description><![CDATA[之前在项目中使用过一个基于 jquery 的图片预览插件—— jquery.galpop.js，甚是好用。并对它念念不忘]]></description><category></category></item><item><title><![CDATA[JS数组高级操作（下）]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682693</link><guid>https://blog.csdn.net/MPFLY/article/details/99682693</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:36:54 +0800</pubDate><description><![CDATA[转载自 JS面试之数组的几个不low操作(3) ，点击查看原文
1. 合并


高级操作
var arr1 = [1,2,3,4]
var arr2 = [5,6,7,8]
arr1.concat(arr2)

[...arr1,...arr2]



常规操作
var arr1 = [1,2,3,4]
var arr2 = [5,6,7,8]
arr2.forEach(item =&gt; {
...]]></description><category></category></item><item><title><![CDATA[JS数组高级操作（上）]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682605</link><guid>https://blog.csdn.net/MPFLY/article/details/99682605</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:34:24 +0800</pubDate><description><![CDATA[转载自 JS面试之数组的几个不low操作(3) ，点击查看原文
1. 数组扁平化


高级操作
var arr1 = [1,2,3,[4,5,[6,7,8]]]
var arr_1 = arr1.flat(Infinity)



常规操作：利用递归和数组合并方法 concat实现扁平。
function flatten(arr) {
  while(arr.some(item=&gt;Array...]]></description><category></category></item><item><title><![CDATA[微信JSSDK使用步骤]]></title><link>https://blog.csdn.net/MPFLY/article/details/99682562</link><guid>https://blog.csdn.net/MPFLY/article/details/99682562</guid><author>MPFLY</author><pubDate>Fri, 16 Aug 2019 17:31:01 +0800</pubDate><description><![CDATA[最近在做一个公众号项目，其中用到了微信的【扫一扫】，如何在项目中接入扫一扫呢？下面开始详细说说。
首先查看文档，之前也看到过很多人抱怨腾讯的文档。不得不说，微信的文档写的真的是“普通”。有的东西解释的太过于简单，让人摸不着头脑。无奈只得求救于网上广大的微信开发先行者，看他们写的一些总结并配合官方文档能更速度的了解整个公众号开发。
官方文档
在学习过后，自己也想系统的总结一下，遂有了这篇文章。下面是...]]></description><category></category></item></channel></rss>