傻傻分不清的__proto__与prototype

2017-10-31
阅读 3 分钟
16k
小英童鞋认为Foo的原型对象是Foo.prototype,所以Foo会继承Foo.prototype的属性,调用Foo.combineName()相当于调用Foo.prototype.combineName(),但结果Foo.combineName()不是一个方法。

JavaScript的异常处理

2017-10-09
阅读 7 分钟
23.6k
当 JavaScript 引擎执行 JavaScript 代码时,有可能会发生各种异常,例如是语法异常,语言中缺少的功能,由于来自服务器或用户的异常输出而导致的异常。

HTML5音频API Web Audio

2017-08-08
阅读 4 分钟
20.4k
此文介绍HTML5音频API的主要框架和工作流程,因为音频处理模块很多,因此只简单介绍几种音频处理模块,并通过例子来展示效果。后续会介绍利用HTML5音频API实现的项目,欢迎大家关注,敬请期待。

换个思路理解Javascript中的this

2017-07-24
阅读 4 分钟
12.2k
在网上很多文章都对 Javascript 中的 this 做了详细的介绍,但大多是介绍各个绑定方式或调用方式下 this 的指向,于是我想有一个统一的思路来更好理解 this 指向,使大家更好判断,以下有部分内容不是原理,而是一种解题思路。

HTML5拖放API Drag and Drop

2017-07-10
阅读 5 分钟
15.1k
此文研究Web API中的拖放接口,提供各个属性和方法的说明,解决拖放过程中的拖拽数据对象存储和获取问题。 拖放API作用到两个目标对象,分别是拖拽目标对象和放置目标对象。 拖拽目标 一个设置draggable属性的值为trueDOM元素或者一个选中状态的文本区块可以成为拖拽目标。 {代码...} OR 放置目标 一个绑定了下图放置目...

Web图片资源的加载与渲染时机

2017-07-03
阅读 4 分钟
32.8k
此文研究页面中的图片资源的加载和渲染时机,使得我们能更好的管理图片资源,避免不必要的流量和提高用户体验。 浏览器的工作流程 要研究图片资源的加载和渲染,我们先要了解浏览器的工作原理。以Webkit引擎的工作流程为例: 从上图可看出,浏览器加载一个HTML页面后进行如下操作: 解析HTML —> 构建DOM树 加载样式 —...

Flexbox布局的正确使用姿势

2017-06-26
阅读 7 分钟
17.6k
在项目中,我们还会大量使用到flexbox的新旧属性,但大多数人一般只会写新属性,旧属性交由autoprefixer处理,但其实完成同样功能的新旧属性表现形式却不尽相同。还有部分人只使用“万能”的flex:number属性为伸缩项目分配空间,但有些特殊情景却无法满足,此文为此梳理了flexbox的新旧属性区别和分配空间的原理,为大家用...