<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[jackzee的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/jackzee</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; jackzee]]></copyright><item><title><![CDATA[对盖得排行APP内容方面的一些看法]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/107890308</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/107890308</guid><author>jackzee</author><pubDate>Sun, 09 Aug 2020 13:55:24 +0800</pubDate><description><![CDATA[周五下午面试了盖得排行的内容岗位，由于太过紧张，面试过程中两个关键问题都回答得非常差劲，大概率gg了。面试完之后回来又更加深度地使用了盖得这款app，写下这篇文章一来是对面试过程中没有好好回答的问题复盘一下，给自己一个交代，二来希望能够“挽”一波，万一呢？


产品概况

盖得排行主要功能是通过给用户提供PGC消费榜单，帮助用户作出购买前决策。标榜客观、公正、不收费、杜绝竞价排名。主要盈利方式是通过电商导流获得返利。编辑团队通过各种途径搜集资料，整理出榜单，让消费者在作出决定之前有一个理性的参考，同时盖得.]]></description><category></category></item><item><title><![CDATA[JavaScirpt的replace()方法默认只会替换一个]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/103906693</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/103906693</guid><author>jackzee</author><pubDate>Thu, 09 Jan 2020 14:01:08 +0800</pubDate><description><![CDATA[String.prototype.replace(str,str)
该方法会用第一个参数来匹配字符串子串,并且替换成第二个参数.但是默认只会替换第一个
如果要替换全部,可以在第一个参数传入一个有全局匹配规则的正则表达式实例,

...]]></description><category></category></item><item><title><![CDATA[使用MUI遇到的坑:  nable to preventDefault inside passive event listener]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/103641060</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/103641060</guid><author>jackzee</author><pubDate>Sat, 21 Dec 2019 09:33:52 +0800</pubDate><description><![CDATA[在使用mui的scroll组件的时候,需要导入mui的js文件,执行以下代码初始化组件:
//导入mui的js文件
import mui from '../../lib/mui/js/mui.min.js'
//初始化滑动控件
mui('.mui-scroll-wrapper').scroll({
	deceleration: 0.0005 
});

但是,当加入这几行代码之后,在浏览器对页面进...]]></description><category></category></item><item><title><![CDATA[foreach 和 map 的区别]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/103596969</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/103596969</guid><author>jackzee</author><pubDate>Wed, 18 Dec 2019 14:22:49 +0800</pubDate><description><![CDATA[相同
两个都是遍历数组然后对数组元素进行回调操作的方法.
匿名函数中的this都是指向windows
执行速度都没有for循环快
不同

foreach没有返回值,不可以链式调用,不能改变数组,但是理论上可以通过回调函数改变数组
map返回的是一个数组,也就是原来的数组,同样不会改变数组
map方法可以链式调用
没有办法跳出foreach循环,除非抛出异常


...]]></description><category></category></item><item><title><![CDATA[JS防抖和节流]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/103533380</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/103533380</guid><author>jackzee</author><pubDate>Fri, 13 Dec 2019 22:05:48 +0800</pubDate><description><![CDATA[在页面中,如果高频率地触发某些事件,特别是回调函数中有一些耗时的操作的时候,就会多次调用回调函数,容易造成页面假死.要解决这类问题,就要用到防抖和节流.
防抖
防抖的原理很简单,可以理解为延迟执行回调函数,然后在这个延迟的期间,如果不再次触发对应事件,才会进行对应的操作,如果触发了对应的事件,就重新计时,这样就实现了防止过频调用回调函数的效果,实现代码如下:
function debounce(f...]]></description><category></category></item><item><title><![CDATA[VUE编程式的导航]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/103432519</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/103432519</guid><author>jackzee</author><pubDate>Sat, 07 Dec 2019 10:05:17 +0800</pubDate><description><![CDATA[除了通过router-link创建a标签来实现路由导航之外,还可以使用编程的方式
router.push(path)

在 Vue 实例内部，你可以通过 $router 访问路由实例。因此你可以调用 this.$router.push\

调用这个方法会向hostory栈添加一个新的方法,当用户点击回退按钮的时候会返回上一个访问的路由页面.其实采用用声明式导航的时候(router-link标签),...]]></description><category></category></item><item><title><![CDATA[用iview标签切换vue路由组件]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/103432439</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/103432439</guid><author>jackzee</author><pubDate>Sat, 07 Dec 2019 09:50:30 +0800</pubDate><description><![CDATA[iview中有效果不错的标签组件,于是就有了把iview中的标签,作为vue路由链接的做法
最开始,打算把router-link的tag指定为iview的Tag.结果发现这是不可行的,于是改变思路,最终实现代码如下:
&lt;Tabs class="switchTab" value="all"
      @on-tab-remove="tabRemove"
      v-model="acti...]]></description><category></category></item><item><title><![CDATA[回调地狱、promise]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/103177896</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/103177896</guid><author>jackzee</author><pubDate>Thu, 21 Nov 2019 11:31:03 +0800</pubDate><description><![CDATA[当异步操作依赖于上一个异步操作的时候，需要进行异步操作的嵌套，否则无法保证回调的顺序执行。但是采用回调嵌套，会形成回调地狱。
为了解决回调地狱的问题，在ES6中新增了promise API
//新建一个承诺容器
var pi = new Promise(function(resolve,reject){
	fs.readFile('./data/123.txt', 'utf8', function...]]></description><category></category></item><item><title><![CDATA[给mac下的WebStorm配置autoprefixer]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/102912249</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/102912249</guid><author>jackzee</author><pubDate>Tue, 05 Nov 2019 11:25:35 +0800</pubDate><description><![CDATA[autoprefixer是什么
autoprefixer
安装autoprefixer
如果没有npm，先安排
然后：
npm install autoprefixer -g

下一步安装postcss-cli
npm install postcss-cli -g

在WebStorm中配置

新建一个External Tool，取个名字，填入：
program：/usr/local/bin/po...]]></description><category></category></item><item><title><![CDATA[模仿豆瓣首页练习-笔记]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/102909813</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/102909813</guid><author>jackzee</author><pubDate>Tue, 05 Nov 2019 11:05:22 +0800</pubDate><description><![CDATA[块盒上方莫名的空白
豆瓣首页的顶部由logo、搜索框、以及一些列导航图标组成。要达到的是下面这种效果：
于是想到用几个行块盒来做，然后定高，排好就行了，没想到在放置搜索框的时候出了问题、实际效果如下：
先忽略整体的上下留白，这一步的目的是让三个行块盒对齐，外围div的高度定为30px，然后里面每一个div的高度也设定为30px，但是可以发现，搜索框上方有一段不应该出现的空白（margin-top已...]]></description><category></category></item><item><title><![CDATA[Mac使用dd命令速度奇慢的解决方式]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/102691927</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/102691927</guid><author>jackzee</author><pubDate>Tue, 22 Oct 2019 22:27:03 +0800</pubDate><description><![CDATA[前几天给树莓派安装ubuntu系统，按照raspberry pi官网的教程，没想到翻了车。
按照教程，用diskutil list命令列出全部磁盘
sd卡路径是/dev/disk2
教程里面关键命令是下面这行：
sudo sh -c 'gunzip -c ~/Downloads/ubuntu.img.xz | sudo dd of=/dev/disk2 bs=32m'

先解压文件，然后再写入sd...]]></description><category></category></item><item><title><![CDATA[JavaScript的new关键字，到底做了什么]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/102633444</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/102633444</guid><author>jackzee</author><pubDate>Sat, 19 Oct 2019 00:09:27 +0800</pubDate><description><![CDATA[看到js高程第六章的时候，有一段示例代码是这样子的：
function Person(name, age, job){
	var o = new Object();
	o.name = name;
	o.age = age;
	o.job = job;
	o.sayName = function(){
		alert(this.name);
	};
	return o;
}

var friend...]]></description><category></category></item><item><title><![CDATA[笔记——KeepAlived]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/85058193</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/85058193</guid><author>jackzee</author><pubDate>Mon, 17 Dec 2018 22:54:32 +0800</pubDate><description><![CDATA[简介
Keepalived是Linux下一个轻量级别的高可用解决方案。高可用：广义来讲，是指整个系统的高可用行；狭义的来讲就是主机的冗余和接管。
它与HeartBeat实现类似的功能，都可以实现服务或者网络的高可用，但是又有差别，HeartBeat是一个专业的、功能完善的高可用软件，它提供HA软件所需的基本功能，比如：心跳检测、资源接管，检测集群中的服务，在集群节点转移共享IP地址的所有者等等。H...]]></description><category></category></item><item><title><![CDATA[Spring mvc 的静态资源映射]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/85036659</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/85036659</guid><author>jackzee</author><pubDate>Sun, 16 Dec 2018 14:07:38 +0800</pubDate><description><![CDATA[访问资源报404的话，原因是静态资源被spring mvc的dispatcher servlet拦截。
解决办法：加入静态资源映射的配置：(以图片资源为例)

&amp;lt;mvc:resources mapping=&quot;/images/**&quot; location=&quot;/images/&quot; /&amp;gt; 


...]]></description><category></category></item><item><title><![CDATA[杂记——可能是最通俗易懂的快速幂]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/84558785</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/84558785</guid><author>jackzee</author><pubDate>Tue, 27 Nov 2018 00:29:18 +0800</pubDate><description><![CDATA[看到一道很简单的求整数次幂的题目，但是看到讨论区有用快速幂做的，我居然不知道这是什么？于是学之，记之（其实这玩意在大一的计算机导论里面提到过）
什么是快速幂
快速幂是一种简化运算底数的n次幂的算法，理论上其时间复杂度为 O(log₂N)， 而一般的朴素算法则需要O(N)的时间复杂度。简单来说快速幂其实就是抽取了指数中的2的n次幂，将其转换为时间复杂度为O(1)的二进制移位运算，所以相应地，时间复杂...]]></description><category></category></item><item><title><![CDATA[LeetCode  453 Minimum Moves to Equal Array Elements]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/84063009</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/84063009</guid><author>jackzee</author><pubDate>Wed, 14 Nov 2018 11:06:21 +0800</pubDate><description><![CDATA[题目：

Given a non-empty integer array of size n, find the minimum number of moves required to make all array elements equal, where a move is incrementing n - 1 elements by 1.
Example:
Input:
[1,2,3]
Ou...]]></description><category></category></item><item><title><![CDATA[Grand Tour  属于欧洲贵族的浪漫成年礼]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/84032341</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/84032341</guid><author>jackzee</author><pubDate>Tue, 13 Nov 2018 23:03:16 +0800</pubDate><description><![CDATA[闲来无事，写一技术无关的博客吧
在豪华品牌的性能车当中，经常能看到很多以GT结尾的型号，例如梅赛德斯的AMG GTR，宾利的欧陆GT，Ferrari 的GTC4Lusso，亲民一点的有宝马5系GT，3系GT等。这些车不一定有很爆炸的性能，不一定是赛道利器，但有一个共同点，他们一定是同级别性能车里面比较舒适的，调教更倾向乘坐感受，而不是极致的速度，内饰可能会用华贵的真皮实木而不是轻量级的碳纤和alc...]]></description><category></category></item><item><title><![CDATA[笔记-会话技术总结]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/83861645</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/83861645</guid><author>jackzee</author><pubDate>Thu, 08 Nov 2018 15:11:07 +0800</pubDate><description><![CDATA[Cookie

存储在客户端
发送Cookie：

Cookie cookie = new Cookie(name,value)//新建Cookie
cookie.setMaxAge(second)//设置有效时间
cookie.setPath()//设置有效路径


获得Cookie：

 Cookie[] cookies = request.getCookies
 //遍历然后
 cookie...]]></description><category></category></item><item><title><![CDATA[LeetCode 886 Possible Bipartition]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/83380299</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/83380299</guid><author>jackzee</author><pubDate>Thu, 25 Oct 2018 15:38:26 +0800</pubDate><description><![CDATA[题目

Given a set of N people (numbered 1, 2, …, N), we would like to split everyone into two groups of any size.
Each person may dislike some other people, and they should not go into the same group.
F...]]></description><category></category></item><item><title><![CDATA[最近的总结？想法？毒鸡汤?]]></title><link>https://blog.youkuaiyun.com/jackzee/article/details/83218684</link><guid>https://blog.youkuaiyun.com/jackzee/article/details/83218684</guid><author>jackzee</author><pubDate>Tue, 23 Oct 2018 01:31:22 +0800</pubDate><description><![CDATA[为什么会有这篇博客
又是0offer的一天，迷茫，压力，不安，失落，这是我最近的主旋律。从假期开始复习准备秋招，到现在一无所获，难免让人感到焦虑。而我又是非常容易受到情绪影响的人，心情不好，什么事情都做不了，时间在一分一秒地流逝。因此给自己一个停下来思考的时间，做一个总结，显得很有必要。为何不写一篇博客呢，正如做技术总结一样，心态的变化过程，也值得总结。
这篇博客可能结构很混乱，分成很多不相关的小...]]></description><category></category></item></channel></rss>