2017年9月22日
摘要: 特点 Promise能将回调分离出来,在异步操作执行之后,用链式方法执行回调,虽然es5用封装函数也能实现,但是如果有多层异步的话,就会显得比较繁琐,而Promise用链式则更加直观优雅. Promise对象不受外界的影响.有三种状态. 进行中, 已成功, 已失败.只有异步操作的结果可以决定当前是哪 阅读全文
posted @ 2017-09-22 16:47 sivaepoch 阅读(172) 评论(0) 推荐(0) 编辑
  2017年9月21日
摘要: 语法 new Map([iterable]) 参数:可以是数组或者其他的可迭代对象.null会被当作undefined Map同Set类似,NaN是相同的,对象和数组是不同的. 上例中,因为对象的key为字符串,当为对象的时候,自动转换成字符串"[object Object]" Object 和 M 阅读全文
posted @ 2017-09-21 09:32 sivaepoch 阅读(123) 评论(0) 推荐(0) 编辑
  2017年9月20日
摘要: 语法 set对象允许存储任何类型的唯一值,无论是原始值或者是对象引用; new Set([iterable]) 参数非必需, 如果传递一个可迭代对象,他的所有元素被添加到新的Set中,如果无此参数,则Set为空 返回一个新的Set对象 简述 set对象是值的集合,元素只会出现一次,即Set中的元素是 阅读全文
posted @ 2017-09-20 14:48 sivaepoch 阅读(136) 评论(0) 推荐(0) 编辑
  2017年7月13日
摘要: 一 初步了解作用域 在了解作用域之前,先来看一个问题; 在js处理这句话的时候,会发生什么呢? 参与这句代码处理过程的参与者 代码处理过程 作用域是什么呢 我们将作用域定义为一套规则,用来管理引擎是如何在当前作用域以及嵌套的子作用域中根据标识符名称进行变量查找. 作用域嵌套 当一个函数嵌套在另一个函 阅读全文
posted @ 2017-07-13 17:40 sivaepoch 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 之前看了很多关于作用域的文章和书,可是都渐渐淡忘了,这里在重新复习作用域的时候,先去了解了js引擎编译的大致过程,来帮助我加深对js的理解. 渲染引擎 浏览器的核心是两部分:渲染引擎和javascript解释器(引擎) 不同的浏览器有不同的渲染引擎,他的主要作用是生成网页,通常分成四个阶段,因为图片 阅读全文
posted @ 2017-07-13 17:36 sivaepoch 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 根据第一篇整体框架,可以知道$()方法返回的Z函数的实例化;而Z的原型又指向$.fn;所以经过$()处理过的对象,都可以使用$.fn中的方法; 这一篇就记录一下读$.fn的笔记; 一 内部函数 zepto.match 如果浏览器支持 方法,则用此方法进行判断 如果浏览器不支持 ,则定义 和`pare 阅读全文
posted @ 2017-07-13 17:28 sivaepoch 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 上篇已经讲解了zepto.init()的几种情况,这篇就继续记录这几种情况下的具体分析. 1. 首先是第一种情况,selector为空 既然是反向分析,那我们先看看这句话的代码; 这里的返回值为 那我们继续往上找zepto.Z()函数 这个函数仍然拥有一个返回值, Z函数的实例 ,同样的道理,我们继 阅读全文
posted @ 2017-07-13 17:24 sivaepoch 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 一 整体结构 为了防止全局变量污染,zepto使用的是立即执行函数,写法结构为: 其中框架的实现方式都是在立即执行函数的第二个函数内部实现的. 定义了一个核心函数 ,也是个立即执行函数. Zepto函数是整个框架源码的核心部分.这里只对这一部分进行分析.下面来看看这里究竟是怎么样的一个过程. 我们在 阅读全文
posted @ 2017-07-13 17:21 sivaepoch 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 1. $.type $.isArray $.isFunction $.isNumeric $.isPlainObject $.isWindow 判断对象的方法介绍 在zepto源码中,使用了 Object.prototype.toString.call() 方法判断对象的类型,以下简单介绍下此方法的 阅读全文
posted @ 2017-07-13 17:07 sivaepoch 阅读(270) 评论(0) 推荐(0) 编辑
  2017年1月3日
摘要: 发现border-radius:50%和border-radius:100%的效果是相同的,有点困惑,于是去上网查询了一下两者的差别。 border-radius的值如果为百分比,则为盒子的宽度与高度的比值。所以当值为50%的时候正好是直径为盒子长度的圆。那当border-radius为100%的时 阅读全文
posted @ 2017-01-03 16:53 sivaepoch 阅读(721) 评论(0) 推荐(0) 编辑