<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[小九的博客]]></title><description><![CDATA[深深的打动你的❤️]]></description><link>https://blog.youkuaiyun.com/qq_31301099</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_31301099]]></copyright><item><title><![CDATA[前端基础进阶（十）：深入核心，详解事件循环机制]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75939219</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75939219</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 17:22:34 +0800</pubDate><description><![CDATA[Event Loop

JavaScript的学习零散而庞杂，因此很多时候我们学到了一些东西，但是却没办法感受到自己的进步，甚至过了不久，就把学到的东西给忘了。为了解决自己的这个困扰，在学习的过程中，我一直试图在寻找一条核心的线索，只要我根据这条线索，我就能够一点一点的进步。
前端基础进阶正是围绕这条线索慢慢展开，而事件循环机制(Event Loop)，则是这条线索的最关键的知识点。所以，我]]></description><category></category></item><item><title><![CDATA[前端基础进阶（九）：图例详解那道setTimeout与循环闭包的经典面试题]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75939083</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75939083</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 17:21:09 +0800</pubDate><description><![CDATA[配图与本文无关

我在详细图解作用域链与闭包一文中的结尾留下了一个关于setTimeout与循环闭包的思考题。

利用闭包，修改下面的代码，让循环输出的结果依次为1， 2， 3， 4， 5
for (var i=1; i5; i++) { 
    setTimeout( function timer() {
        console.log(i);
    }, i*1000 )]]></description><category></category></item><item><title><![CDATA[前端基础进阶（八）：详细图解jQuery对象，以及如何扩展jQuery插件]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75938380</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75938380</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 17:19:00 +0800</pubDate><description><![CDATA[配图与本文无关

早几年学习前端，大家都非常热衷于研究jQuery源码。我还记得当初从jQuery源码中学到一星半点应用技巧的时候常会有一种发自内心的惊叹，“原来JavaScript居然可以这样用！”
虽然随着前端的发展，另外几种前端框架的崛起，jQuery慢慢变得不再是必须。因此大家对于jQuery的热情低了很多。但是许多从jQuery中学到的技巧用在实际开发中仍然非常好用。简单的了解它也]]></description><category></category></item><item><title><![CDATA[前端基础进阶（七）：详解面向对象、构造函数、原型与原型链]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75937660</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75937660</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 17:17:15 +0800</pubDate><description><![CDATA[.

如果要我总结一下学习前端以来我遇到了哪些瓶颈，那么面向对象一定是第一个毫不犹豫想到的。尽管我现在对于面向对象有了一些的了解，但是当初的那种似懂非懂的痛苦，依然历历在目。
为了帮助大家能够更加直观的学习和了解面向对象，我会用尽量简单易懂的描述来展示面向对象的相关知识。并且也准备了一些实用的例子帮助大家更加快速的掌握面向对象的真谛。


jQuery的面向对象实现

封装拖拽
]]></description><category></category></item><item><title><![CDATA[前端基础进阶（六）：函数与函数式编程]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75937002</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75937002</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 17:15:44 +0800</pubDate><description><![CDATA[函数：菜鸟收割者

纵观JavaScript中所有必须需要掌握的重点知识中，函数是我们在初学的时候最容易忽视的一个知识点。在学习的过程中，可能会有很多人、很多文章告诉你面向对象很重要，原型很重要，可是却很少有人告诉你，面向对象中所有的重点难点，几乎都与函数息息相关。
包括我之前几篇文章介绍的执行上下文，变量对象，闭包，this等，都是围绕函数来展开。
我知道很多人在学习中，很急切的希望自己]]></description><category></category></item><item><title><![CDATA[前端基础进阶（五）：全方位解读this]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75909734</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75909734</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 14:31:42 +0800</pubDate><description><![CDATA[~

我们在学习JavaScript的过程中，由于对一些概念理解得不是很清楚，但是又想要通过一些方式把它记下来，于是就很容易草率的给这些概念定下一些方便自己记忆的有偏差的结论。
危害比较大的是，有的不准确的结论在网上还广为流传。
比如对于this指向的理解中，有这样一种说法：谁调用它，this就指向谁。在我刚开始学习this的时候，我是非常相信这句话的。因为在一些情况下，这样理解也还算说得]]></description><category></category></item><item><title><![CDATA[前端基础进阶（四）：详细图解作用域链与闭包]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75909694</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75909694</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 14:30:25 +0800</pubDate><description><![CDATA[攻克闭包难题


初学JavaScript的时候，我在学习闭包上，走了很多弯路。而这次重新回过头来对基础知识进行梳理，要讲清楚闭包，也是一个非常大的挑战。
闭包有多重要？如果你是初入前端的朋友，我没有办法直观的告诉你闭包在实际开发中的无处不在，但是我可以告诉你，前端面试，必问闭包。面试官们常常用对闭包的了解程度来判定面试者的基础水平，保守估计，10个前端面试者，至少5个都死在闭包上。
可]]></description><category></category></item><item><title><![CDATA[前端基础进阶（三）：变量对象详解]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75909682</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75909682</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 14:28:41 +0800</pubDate><description><![CDATA[开年之后工作热情一直不是很高，这几天一直处于消极怠工状态。早上不想起床，起床了不想上班。明明放假之前工作热情还一直很高，一直心心念念的想把小程序项目怼出来，结果休假回来之后画风完全不一样了。我感觉自己得了严重了节后综合征。还好撸了几篇文章，勉强表示这一周的时间没有完全浪费。这篇文章要给大家介绍的是变量对象。
在JavaScript中，我们肯定不可避免的需要声明变量和函数，可是JS解析器是如何找到]]></description><category></category></item><item><title><![CDATA[前端基础进阶（二）：执行上下文详细图解]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75909673</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75909673</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 14:27:44 +0800</pubDate><description><![CDATA[先随便放张图


我们在JS学习初期或者面试的时候常常会遇到考核变量提升的思考题。比如先来一个简单一点的。
console.log(a);   // 这里会打印出什么？
var a = 20;
暂时先不管这个例子，我们先引入一个JavaScript中最基础，但同时也是最重要的一个概念执行上下文（Execution Context）。
每次当控制器转到可执行代码的时候，就会进入一个执行上]]></description><category></category></item><item><title><![CDATA[前端基础进阶（一）：内存空间详细图解]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/75909651</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/75909651</guid><author>qq_31301099</author><pubDate>Sun, 23 Jul 2017 14:26:01 +0800</pubDate><description><![CDATA[变量对象与堆内存

var a = 20;
var b = 'abc';
var c = true;
var d = { m: 20 }
因为JavaScript具有自动垃圾回收机制，所以对于前端开发来说，内存空间并不是一个经常被提及的概念，很容易被大家忽视。特别是很多不是计算机专业的朋友在进入到前端之后，会对内存空间的认知比较模糊，甚至有些人干脆就是一无所知。
当然也包括我自己。在很长一]]></description><category></category></item><item><title><![CDATA[JS 堆 栈 与 拷贝]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73989186</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73989186</guid><author>qq_31301099</author><pubDate>Fri, 30 Jun 2017 12:48:14 +0800</pubDate><description><![CDATA[1、栈（stack）和堆（heap）

　　stack为自动分配的内存空间，它由系统自动释放；而heap则是动态分配的内存，大小不定也不会自动释放。　　　　　　　

2、基本类型和引用类型

　　基本类型：存放在栈内存中的简单数据段，数据大小确定，内存空间大小可以分配。

　　5种基本数据类型有Undefined、Null、Boolean、Number 和 String，它们是直接]]></description><category></category></item><item><title><![CDATA[清除浮动都有哪些方法 clear  float]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73928439</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73928439</guid><author>qq_31301099</author><pubDate>Thu, 29 Jun 2017 21:54:42 +0800</pubDate><description><![CDATA[.p{width:500px; border:1px solid black; padding:10px;}
.c{width:100px; height:100px; background-color: green;}
div class="p">
     div class="c">div>
     div class="c">div>
     div class="c">div>
]]></description><category></category></item><item><title><![CDATA[js闭包的理解与应用]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73887766</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73887766</guid><author>qq_31301099</author><pubDate>Thu, 29 Jun 2017 12:53:11 +0800</pubDate><description><![CDATA[1.闭包的简单理解


function f1(){
        var i=0;
        
        function f2(){
            alert(i);
        }
        
        return f2;
    }
    
var f3 = f1();
f3();


全局变量f3指定对 函数f]]></description><category></category></item><item><title><![CDATA[mongodb安装 mac]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73844696</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73844696</guid><author>qq_31301099</author><pubDate>Wed, 28 Jun 2017 15:12:34 +0800</pubDate><description><![CDATA[1.下载mongodb-osx-ssl-x86_64-3.4.5.tgz      我将 mongodb-osx-ssl-x86_64-3.4.5.tgz 改为了 mongodb
https://www.mongodb.com/download-center?jmp=nav#community

2.解压后 放到自己喜欢的目录
我将它放到我的   /opt/
3. 配置环境变量]]></description><category></category></item><item><title><![CDATA[bower install  <package> 报错 ECMDERR]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73733198</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73733198</guid><author>qq_31301099</author><pubDate>Mon, 26 Jun 2017 11:11:47 +0800</pubDate><description><![CDATA[废话不多说   直接上报错代码    bower 安装 package     第三行报错 ECMDERR    
解决办法   git config --global url."https://".insteadOf git://
第5行还报错 (可能是mac的原因)    Additional error details:   （额外的错误详细信息:） 
解决办法  xcode-sele]]></description><category></category></item><item><title><![CDATA[Linux软连接和硬链接]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73690982</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73690982</guid><author>qq_31301099</author><pubDate>Sat, 24 Jun 2017 13:31:39 +0800</pubDate><description><![CDATA[1.Linux链接概念
Linux链接分两种，一种被称为硬链接（Hard Link），另一种被称为符号链接（Symbolic Link）。默认情况下，ln命令产生硬链接。

【硬连接】
硬连接指通过索引节点来进行连接。在Linux的文件系统中，保存在磁盘分区中的文件不管是什么类型都给它分配一个编号，称为索引节点号(Inode Index)。在Linux中，多个文件名指向同一索引节点是存在的]]></description><category></category></item><item><title><![CDATA[exports 和 module.exports 的区别]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73294475</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73294475</guid><author>qq_31301099</author><pubDate>Thu, 15 Jun 2017 17:28:34 +0800</pubDate><description><![CDATA[require()
 返回的是 module.exports 而不是 exports，
exports只不过是它的一个辅助工具。


所有的exports收集到的属性和方法，都赋值给了Module.exports。



把下面两篇文章理解了  也就理解 exports 和 module.exports 的联系
1.http://cnodejs.org/topic/5231a6]]></description><category></category></item><item><title><![CDATA[github上建一个自己常用的第三方插件]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73167064</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73167064</guid><author>qq_31301099</author><pubDate>Tue, 13 Jun 2017 11:42:55 +0800</pubDate><description><![CDATA[https://github.com/ChinaJiu/src/blob/master/jquery.min.js


例如 我看了 jquery.min.js 文件

地址栏
 ： https://raw.githubusercontent.com/ChinaJiu/src/master/jquery.min.js

想要引用
 只需将raw.githubusercontent]]></description><category></category></item><item><title><![CDATA[穿越时空效果 （TweenMAx）]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/73164397</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/73164397</guid><author>qq_31301099</author><pubDate>Tue, 13 Jun 2017 11:23:53 +0800</pubDate><description><![CDATA[github地址    https://github.com/ChinaJiu/Chrono-Cross
效果预览   https://chinajiu.github.io/Chrono-Cross/]]></description><category></category></item><item><title><![CDATA[终端命令行]]></title><link>https://blog.youkuaiyun.com/qq_31301099/article/details/69387980</link><guid>https://blog.youkuaiyun.com/qq_31301099/article/details/69387980</guid><author>qq_31301099</author><pubDate>Thu, 06 Apr 2017 12:36:00 +0800</pubDate><description><![CDATA[英文         |   简写  | 翻译          
————————————————————————
directory   |  dir     | 目录、文件夹
file            |        | 文件
make        |  mk     | 新建
remove     |  rm      | 删除
move        |  mv]]></description><category></category></item></channel></rss>