摘要: 数组的length属性的值是这个数组的最大整数属性名加上1.它不一定等于数组里的属性的个数。var myArr = [];myArr.length //0myArr[1000] = true;myArr.length = 1001; //1001 阅读全文
posted @ 2015-05-31 20:04 debug8man 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 迄今为止,所看到的继承模式的一个弱点就是我们没办法保护隐私。对象的所有属性都是可见的。我们没法得到私有变量和私有函数。var mammal = function (spec) { var that = {}, that.get_name = function ... 阅读全文
posted @ 2015-05-31 19:30 debug8man 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 在一个纯粹的原型模式中,我们会摒弃类,转而专注于对象,基于原型的继承相比基于类的继承的概念上更为简单if( typeof Object.beget !== 'function'){ Object.beget = function(o) { var F = fun... 阅读全文
posted @ 2015-05-31 19:11 debug8man 阅读(104) 评论(0) 推荐(0) 编辑
摘要: JavaScript是一门基于原型的语言,这意味着对象直接从其他对象继承。JavaScript的原型存在着诸多矛盾。某些看起来有点像基于类的语言的复杂语法问题屏蔽了它的原型机制。它不让对象直接从其他对象继承,反而插入了一个多余的间接层,从而使构造器函数产生对象。var Mammal = functi... 阅读全文
posted @ 2015-05-31 17:04 debug8man 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 1 方法调用模式var myObject = { value : 0, increment : function(inc) { alert('hi'); }};myObject.increment();2 函数调用模式var sum ... 阅读全文
posted @ 2015-05-31 16:29 debug8man 阅读(217) 评论(0) 推荐(0) 编辑