从JavaScript属性描述器剖析Vue.js响应式视图

学习每一门语言,一般都是从其数据结构开始,JavaScript也是一样,而JavaScript的数据结构中对象(Object)是最基础也是使用最频繁的概念和语法,坊间有言,JavaScript中,一切皆对象,基本可以描述对象在JavaScript中的地位,而且JavaScript中对象的强大也使其地位名副其实,本篇介绍JavaScript对象属性描述器接口及其在数据视图绑定方向的实践,然后对Vue.js的响应式原理进行剖析。

轮播动画简单实现

现在的前端,越来越注重用户交互和体验,有很多动画和效果是很常见的,如本篇要讲的主题:轮播动画。这和以前经常听到的一个名词--”跑马灯“效果一样。在CSS3出来之前,都是通过JavaScript实现的动画,现在我们完全可以使用CSS3,性能有很大的提升,兼容性也已经很不错,尤其是移动端。

React DOM

为了性能和跨浏览器的兼容性,React实现了一个独立于浏览器的DOM系统。对于用户来说,不需要考虑很多不同的浏览器实现和行为。本篇介绍React中的DOM以及与HTML DOM的对比。

认识React的diff算法

React提供一种声明式API,使得我们不需要了解在每次更新时具体改变了什么。这使得开发应用很简单,但是React如何实现这一点并不明显。本篇文章介绍React的diff算法为何在满足高性能应用要求时,React组件的更新是可预测的。

React入门与进阶之路由

在传统的网页应用中,一般是根据用户的操作指向不同的url,然后服务器渲染出不同的html代码,后来有了ajax,在同一页面里,可以为不同操作,指定处理器函数,在不刷新页面的情况下更新局部视图,但是局限依然较大,一旦跳转了URL,依然需要服务器渲染模板返回;而在Backbone,Angular,React出现以后,在单页面应用中,我们可以给不同URL指定处理器函数,保持URL与视图的同步,渲染模板的功能已经转移到客户端进行,与服务器的交互只涉及到数据,这就是路由的功能。

Framekiller与sandbox

Framekiller是一种web应用使用来防止应用页面在frame窗口内展示的技术。它通常被用来阻止第三方网站的frame窗口在未经允许的情况下就被加载,所以这也是防止点击劫持(clickjacking)的一种手段。本文将主要介绍Framekiller相关知识以及HTML5提出的沙箱隔离- iframe的sandbox属性。

ECMAScript 6入门与进阶

ECMAScript 6,也叫ECMAScript 2015,简称ES6,是JavaScript的下一代标准,15年正式发布。2009年发布的改进版本ES5,引入了 Object.create()、Object.defineProperty()、getters 和 setters、严格模式以及 JSON 对象。相对于ES5的改进,ES6的变化是具有里程碑性的,它将改变我们编写JavaScript代码的方式。

React入门与进阶之Flux

[上一篇](http://blog.codingplayboy.com/2016/08/28/react_learn_02/),我们学习了React组件间的复合和通信,本篇我们详细介绍为React设计的架构模式Flux。Flux为React提供了一种单向数据流模式,使用此模式能够很方便的监控数据变化的原因和过程。

React入门与进阶之组件的复合与通信

在上一篇,我们学习了React基础知识,JSX语法;props和state;组件的生命周期和生命周期方法;组件的事件处理相关知识,对React有了一定的了解,但主要是对单个React组件的学习,本篇我们开始学习React组件的复合和通信。