代码改变世界

如何编写一个gulp插件

2017-02-06 22:44 by 猴子猿, 363 阅读, 收藏, 编辑
摘要: 很久以前,我们在"细说gulp"随笔中,以压缩JavaScript为例,详细地讲解了如何利用gulp来完成前端自动化。再来短暂回顾下,当时除了借助gulp之外,我们还利用了第三方gulp插件”gulp-uglify”,来达到压缩JavaScript文件的目的。今儿,我们的重点就是,自己也来实现一个gulp插件。阅读全文

进阶之初探nodeJS

2017-01-24 08:44 by 猴子猿, 583 阅读, 收藏, 编辑
摘要: 在"初探nodeJS"随笔中,我们对于node有了一个大致地了解,并在最后也通过一个示例,了解了如何快速地开启一个简单的服务器。今儿,再次看了该篇随笔,发现该随笔理论知识稍多,适合初级入门node,固萌生一个想法--想在该篇随笔中,通过一步步编写一个稍大一点的node示例,让我们在整体上更加全面地了解node。阅读全文

模拟Vue之数据驱动5

2017-01-13 00:13 by 猴子猿, 299 阅读, 收藏, 编辑
摘要: 实现:当data数据改动后,让其它向上传递,通俗点就是冒泡至根结点,这样我们也可以在自己代码中使用事件代理。阅读全文

模拟Vue之数据驱动4

2017-01-12 00:10 by 猴子猿, 248 阅读, 收藏, 编辑
摘要: 在"模拟Vue之数据驱动3"中,我们实现了为每个对象扩展一个$set方法,用于新增属性使用,这样就可以监听新增的属性了。当然,数组也是对象,也可以通过$set方法实现新增属性。 但是,对于数组而言,通常我们是通过push之类的方法吧。下面,我们就一起来实现这些Array的变异方法吧。阅读全文

模拟Vue之数据驱动3

2017-01-11 00:20 by 猴子猿, 353 阅读, 收藏, 编辑
摘要: 阐述Vue中如何做到监听对象中新增的属性以及属性值的属性。阅读全文

模拟Vue之数据驱动2

2017-01-10 00:17 by 猴子猿, 277 阅读, 收藏, 编辑
摘要: 通过构建一个Observer构造函数,实现监听data数据中的每个属性。阅读全文

树结构之JavaScript

2017-01-09 00:07 by 猴子猿, 362 阅读, 收藏, 编辑
摘要: 对于数据结构“树”,想必大家都熟悉,今儿,我们就再来回顾一下数据结构中的二叉树与树,并用JavaScript实现它们。阅读全文

模拟Vue之数据驱动1

2017-01-08 16:31 by 猴子猿, 444 阅读, 收藏, 编辑
摘要: Vue有一核心就是数据驱动(Data Driven),允许我们采用简洁的模板语法来声明式的将数据渲染进DOM,且数据与DOM是绑定在一起的,这样当我们改变Vue实例的数据时,对应的DOM元素也就会改变了。 今儿,我们就一起来模拟一下它吧。阅读全文

CORS详解[译]

2017-01-05 20:52 by 猴子猿, 237 阅读, 收藏, 编辑
摘要: 由于同源策略的缘故,以往我们跨域请求,会使用诸如JSON-P(不安全)或者代理(设置代理和维护繁琐)的方式。而跨源资源共享(Cross-Origin Resource Sharing)是一个W3C规范,其建立在XMLHttpRequest对象之上,允许开发人员像使用同源请求一样的规则,在浏览器端发送跨域请求。下面我们就来重点看看CORS。阅读全文

jQuery之Deferred源码剖析

2016-12-19 00:41 by 猴子猿, 347 阅读, 收藏, 编辑
摘要: 通过简单的示例代码,短暂地回顾了jQuery的Deferred使用后,我们一起来看看jQuery是怎么实现Deferred,当然解读jQuery源代码的版本是大于1.8的。阅读全文