JS模式:继承
2015/09/29
上一篇介绍了JS对象的特点以及如何创建对象。这篇谈一下在JS里如何实现继承。
实现继承的主要方式是利用原型链。其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。我们让原型对象等于另一个类的实例,此时原型对象将包含一个指向另一个原型的指针,假如另一个原型又是另一个类型的实例,如此层层递进,构成了实例与原型的链条。这就是原型链。
上一篇介绍了JS对象的特点以及如何创建对象。这篇谈一下在JS里如何实现继承。
实现继承的主要方式是利用原型链。其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。我们让原型对象等于另一个类的实例,此时原型对象将包含一个指向另一个原型的指针,假如另一个原型又是另一个类型的实例,如此层层递进,构成了实例与原型的链条。这就是原型链。
话说这些真是看一遍忘一遍啊,归根到底还是用得少。做一下笔记,免得下次用又去找资料了。
最近在看JS设计模式,顺便回顾一下基础知识,做一下归纳总结。
做一下时间操作相关的笔记,方便以后查找。
1 | var timestamp = Date.parse(new Date()); |
原文链接:Initialization of functions and variables
在JS里,变量和函数的机制和别的大部分语言有很大区别。首先必须要了解它是如何运作的。
JS中,所有的局部变量和函数都是一个特殊内部对象的属性,这个特殊的对象是LexicalEnvironment。
对于浏览器而言,顶层的LexicalEnvironment就是window。它也被称作全局对象。
看到同事天空男-斯盖勒
的博客中《七个必备的js函数》这篇文章,满怀希望地点进去了。毫无意外地感到了失望,他只翻译了一个函数。作为好同事的我,决定把剩下的六个也翻译了。
原文链接《7 Essential JavaScript Functions》
什么是debounce
?
举个例子,设置一个时间t毫秒,在触发事件后的t毫秒内,假如事件没有再次被触发,则执行回调函数;若再次触发,则重新计时。
debouce
函数是提升事件驱动性能方面的佼佼者。如果没有把去抖函数使用在scroll
,resize
,key
等事件中,你的程序可能会出现错误。下面这个debounce函数 可以使你的代码更加高效:
总觉得什么网易博客、博客园、新浪博客这些门户网站提供的博客平台逼格不够高。无意中点进一个用hexo搭建的博客,十分惊艳,深深地打动了我。于是折腾了好几天,把博客搭起来了,目前还很不完善,需要逐步优化。喜欢简约的风格,所以没有太多花俏的东西。
虽然是没有花俏的东西,但是我还是很注重细节的。嗯,这是个好习惯。
以后什么日志、照片都扔这里了。