<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[silenmm的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/silenmm</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; silenmm]]></copyright><item><title><![CDATA[react的diff算法浅见]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/108461217</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/108461217</guid><author>silenmm</author><pubDate>Tue, 08 Sep 2020 08:59:04 +0800</pubDate><description><![CDATA[react的diff算法
总体来说，diff作为virtual DOM的加速器，它的改进优化提高了React整个页面渲染的速度。diff算法比较的是新旧virtual DOM，并将最终的差异操作真实DOM。由于减少真实DOM的操作，只是在virtual DOM做比较(特殊表示的对象)，所以性能大大提升。
diff策略：
1、web UI中DOM跨层级的移动操作特别少，忽略不计
2、拥有相同类的组件会生成相似树形结构，不同类的组件生成不同树形结构
3、同一层级的一组子节点，通过唯一id区分
针对上面三个策略，]]></description><category></category></item><item><title><![CDATA[ES6标准之let和const的记录]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/107757765</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/107757765</guid><author>silenmm</author><pubDate>Mon, 03 Aug 2020 10:26:09 +0800</pubDate><description><![CDATA[在ES6之前，声明变量只有var和function两种方式，ES6有6种，除了ES5的两种，还有let和const，import和class。
个人感觉，let和const都是为了解决var声明的变量作用域比较混乱而出现的，它们都是块级作用域，使用块级作用域的原因是某些场景使用var会造成一些不好的影响，比如函数中声明同名变量，会造成变量提升，覆盖前面的变量，再比如，for循环中的i，不会在循环结束之后销毁，这就造成了循环变量泄漏为全局销量。
相同点：
1、块级作用域
2、暂时性死区
3、不可重复声明
不同]]></description><category></category></item><item><title><![CDATA[前端记录]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/105736227</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/105736227</guid><author>silenmm</author><pubDate>Fri, 24 Apr 2020 17:31:54 +0800</pubDate><description><![CDATA[js实现换行
当自带的遇到空格即换行机制不太友好时，我们需要人为的去控制换行，但同时又想兼顾如果一行放得下则放一行，一行放不下时，部分值换行。
举例 展示 time：13: 00，May 22，如果用自动换行机制，很有可能22单独成一行，这样用户体验很不好。但如果是 time：13: 00，May 5，可能一行就放的下，所以现在需要js处理。思想：父div内再写一层子span，因为span具有内容...]]></description><category></category></item><item><title><![CDATA[工作总结]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/103583731</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/103583731</guid><author>silenmm</author><pubDate>Tue, 17 Dec 2019 16:59:44 +0800</pubDate><description><![CDATA[@浅谈flex布局
最近踩的坑有点多，先简单总结一下
1、componentDidUpdate有三个形参，就算只用prevState，也要把不用的nextProps带着，这点可以参考函数的形参用法。
2、华为mate30 pro在有图片时，document.body.scrollTop || document.documentElement.scrollTop值会多出，这个原因没找到
3、flex...]]></description><category></category></item><item><title><![CDATA[记初学vue完成的第一个demo]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/81477761</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/81477761</guid><author>silenmm</author><pubDate>Tue, 07 Aug 2018 11:08:25 +0800</pubDate><description><![CDATA[7.5来到苏小研报道，7.10正式参加实习工作，布置的任务要求就是熟悉vue框架，然后按要求完成一个demo。从最初的慌，懵到此刻的静，定，这一个月的学习还是很有收获的，特记录一下。项目地址：https://github.com/happy8silence/PMO.git。项目运行：npm install   npm run serve
这个项目的技术栈是vue+vuex+vue-router+a...]]></description><category></category></item><item><title><![CDATA[web前端Day 7]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80488941</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80488941</guid><author>silenmm</author><pubDate>Mon, 28 May 2018 21:21:25 +0800</pubDate><description><![CDATA[1、/就是简单的除法符号

2、&amp;amp;lt;&amp;amp;lt;代表左移符号，&amp;amp;gt;&amp;amp;gt;代表右移符号，|代表或符号，&amp;amp;amp;代表与符号，~代表非符号，^代表异或符号

3、NOSCRIPT标签用来定义在脚本未被执行时的替代内容，也可以用在检测浏览器是否支持脚本，若不支持脚本则可以显示NOSCRIPT标签里的innerText

4、为了解决angularJS性能问题，编译阶段应分为两个阶段：compile...]]></description><category></category></item><item><title><![CDATA[有关promise的用法]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80408016</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80408016</guid><author>silenmm</author><pubDate>Tue, 22 May 2018 16:48:08 +0800</pubDate><description><![CDATA[ES6中， 
1、promise对象代表一个异步操作，有3种状态：等待（pending）、已完成（fulfilled）、已拒绝（rejected）。 
2、状态只能从等待转到完成或者拒绝态，不能逆向转换，同时完成和拒绝态不能互转。 
3、promise必须实现then方法，而且then必须返回一个promise，同一个promise的then可以调用多次，并且回调的执行顺序跟它们被定义时的顺序一致...]]></description><category></category></item><item><title><![CDATA[前端面试题目记录]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80363413</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80363413</guid><author>silenmm</author><pubDate>Fri, 18 May 2018 13:53:45 +0800</pubDate><description><![CDATA[1、实现响应式布局 
首先，在网页代码的头部，加入viewport元标签；其次，不使用绝对宽度，像素宽度只能指定百分比宽度，使用相对大小的字体，，只能使用相对大小em；再次，使用流动布局，各个区块的位置是浮动过的；还有选择加载css，引入css3的media query模块，意思就是自动探测屏幕宽度，加载相应的css文件；最后就是图片的自适应img { max-width: 100%;}

2、三...]]></description><category></category></item><item><title><![CDATA[前端学习Day 6]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80357565</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80357565</guid><author>silenmm</author><pubDate>Thu, 17 May 2018 22:00:27 +0800</pubDate><description><![CDATA[1、ajax是一种异步请求数据的技术，对于改善用户体验和程序的性能很有帮助 
ajax使用过程： 
(1)创建XMLHttpRequest对象,也就是创建一个异步调用对象. 
(2)创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息. 
(3)设置响应HTTP请求状态变化的函数. 
(4)发送HTTP请求. 
(5)获取异步调用返回的数据. 
(6)使用JavaScript和D...]]></description><category></category></item><item><title><![CDATA[前端练习Day 5]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80266859</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80266859</guid><author>silenmm</author><pubDate>Thu, 10 May 2018 14:09:47 +0800</pubDate><description><![CDATA[1、在CSS中，html中的标签元素大体被分为三种不同的类型： 块状元素、内联元素(又叫行内元素)和内联块状元素。  
常用的块状元素有： 
 &amp;lt;div&amp;gt;、&amp;lt;p&amp;gt;、&amp;lt;h1&amp;gt;…&amp;lt;h6&amp;gt;、&amp;lt;ol&amp;gt;、&amp;lt;ul&amp;gt;、&amp;lt;dl&amp;gt;、&amp;lt;table&amp;gt;、&amp;lt;address&amp;gt;、&amp;]]></description><category></category></item><item><title><![CDATA[前端练习Day 4]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80236147</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80236147</guid><author>silenmm</author><pubDate>Tue, 08 May 2018 10:44:46 +0800</pubDate><description><![CDATA[1、margin-top，padding-top的值是百分比时，它们都是相对最近父级块元素的width

2、窗口上下滚动，始终固定在视野顶端的是&amp;lt;div style=”position:fixed;top:0;”&amp;gt;&amp;lt;/div&amp;gt;其中，div的直接父级元素是&amp;lt;body&amp;gt; 
   

3、内联元素加上display：block;后被块级化。块级元素一般是其他元素的容...]]></description><category></category></item><item><title><![CDATA[前端练习Day 3]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80228947</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80228947</guid><author>silenmm</author><pubDate>Mon, 07 May 2018 17:38:13 +0800</pubDate><description><![CDATA[1、选择器，id选择器 #id ，类选择器 .class，标签选择器 item，span.item表示选中class名为item的span，span .item表示选中span下面的class名为item的元素，span,  .item表示同时选中span和class名为item的标签

2、css选择器优先级为id&amp;gt;class&amp;gt;标签

3、html5中的Web Storage包括了两...]]></description><category></category></item><item><title><![CDATA[前端练习Day 2]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80214012</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80214012</guid><author>silenmm</author><pubDate>Sun, 06 May 2018 13:58:56 +0800</pubDate><description><![CDATA[1、HTML文档包含超链接时，要实现当鼠标移入该链接，超链接文本大小变为30px 
鼠标移入onmouseover，移出onmouseout 
&amp;lt;a  href=&quot;#&quot; 
onmouseover=&quot;this.style.fontSize='30px'&quot;&amp;gt;注册&amp;lt;/a&amp;gt; 
js添加的属性名用驼峰法，css使用连接线 
补充：驼峰命名法就是当变量名或函数名是由一个或多个单字连结在...]]></description><category></category></item><item><title><![CDATA[前端练习Day1]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/80204309</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/80204309</guid><author>silenmm</author><pubDate>Sat, 05 May 2018 11:51:00 +0800</pubDate><description><![CDATA[错题整理： 
1、&amp;lt;div&amp;gt;,&amp;lt;h1&amp;gt;,&amp;lt;p&amp;gt;是块级元素，&amp;lt;span&amp;gt;不是块级元素  
解析：块级元素在浏览器中一般以新行来开始和结束。块级元素根据结构还是内容可分为三种： 
结构化块状元素：用于构造文档的结构 
终端块状元素：用于从结构转向内容，属于结构的终点，不能包含其他块级元素，只能包含文本或行级元素 
多目标块状元素：可以自由的扩展或嵌套文档...]]></description><category></category></item><item><title><![CDATA[GOTURN算法在ubuntu14.04+only_cpu环境下编译运行]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/78721869</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/78721869</guid><author>silenmm</author><pubDate>Tue, 05 Dec 2017 16:32:49 +0800</pubDate><description><![CDATA[﻿﻿




安装cmake

sudo apt-getinstall cmake


安装caffe

http://caffe.berkeleyvision.org/installation.html官网教程

2.1 
选择自己需要的安装，因为我是只有CPU，并且ubuntu14.04版本

命令如下：

sudo apt-get install lib]]></description><category></category></item><item><title><![CDATA[ionic常见问题及解决方法]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/78582464</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/78582464</guid><author>silenmm</author><pubDate>Mon, 20 Nov 2017 15:09:05 +0800</pubDate><description><![CDATA[﻿﻿
原文网址：http://mclspace.com/2016/01/16/ionic-problems-and-solutions/

前言

Ionic是目前较为流行的Hybird App解决方案,在Ionic开发过程中会遇到很多常见的开发问题，本文尝试对这些问题给出解决方案。



一些常识与技巧

list 有延迟，可以在ion-content处使用 overflo]]></description><category></category></item><item><title><![CDATA[angularjs+ionic环境配置]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/78553610</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/78553610</guid><author>silenmm</author><pubDate>Thu, 16 Nov 2017 17:33:06 +0800</pubDate><description><![CDATA[﻿﻿

Angularjs+ionic开发环境配置ubuntu14.04 64bit

第一步：安装Node.js

1、我选择下载安装包安装，下载地址https://nodejs.org/dist/v8.0.0/node-v8.0.0-linux-x64.tar.gz

      
安装命令sudotar -C /usr/local --strip-components 1 ]]></description><category></category></item><item><title><![CDATA[光流法+FAST特征点]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/78185845</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/78185845</guid><author>silenmm</author><pubDate>Mon, 09 Oct 2017 19:29:51 +0800</pubDate><description><![CDATA[转自http://blog.youkuaiyun.com/qianxin_dh/article/details/42810073

一.光流法回顾

       光流作为飞行昆虫对外界光学信息感知，处理的方式，其概念在1950年有Gibson首次提出，80年代初期Horn和Schunck以及Lucas和Kanade做了奠基性工作，之后光流法被广泛研究，很多种方法被相继提出。1994年，Barron等]]></description><category></category></item><item><title><![CDATA[TLD算法的相关研究（4）]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/78185217</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/78185217</guid><author>silenmm</author><pubDate>Mon, 09 Oct 2017 18:02:30 +0800</pubDate><description><![CDATA[跟踪部分]]></description><category></category></item><item><title><![CDATA[TLD算法的相关研究（3）]]></title><link>https://blog.youkuaiyun.com/silenmm/article/details/78181750</link><guid>https://blog.youkuaiyun.com/silenmm/article/details/78181750</guid><author>silenmm</author><pubDate>Mon, 09 Oct 2017 13:41:56 +0800</pubDate><description><![CDATA[转自：http://johnhany.net/2014/05/tld-the-theory/
　　正如名字所示，TLD算法主要由三个模块构成：追踪器（tracker），检测器（detector）和机器学习（learning）。
　　对于视频追踪来说，常用的方法有两种，一是使用追踪器根据物体在上一帧的位置预测它在下一帧的位置，但这样会积累误差，而且一旦物体在图像中消失，追踪器就会永久失效，即使物]]></description><category></category></item></channel></rss>