从十几年前的文章到现在,太多程序员自己写自己的JavaScript原型扩展,来满足自己的开发需要,不管是新手还是老手都重复做这些事情。此文目的很简单:将你看到的相关信息链接贴到这里来,介绍链接中内容扩的东西,这里就是JavaScript扩展库及聚集地在你自己想写自己的JavaScript原库扩展库时...
分类:
编程语言 时间:
2015-04-07 13:37:42
阅读次数:
205
结论1:Object.prototype只是一个普通对象,它是js原型链的最顶端。
结论2:在js中如果A对象是由B函数构造的,那么A.__proto__ === B.prototype。
结论3:内置的Object是其实也是一个函数对象,它是由Function创建的。
结论4:js中每一个对象或函数都有__proto__属性,但是只有函数对象才有prototype属性。
结论5:Function.prototype是个特例,它是函数对象,但是没有prototype属性。其他所有函数都有prototype属...
分类:
编程语言 时间:
2015-04-04 00:02:03
阅读次数:
453
之前的文章里有提到过javascript类式继承,那种继承方式极大的方便了其他语言(非javascript)程序员使用javascript来实现继承,但是有缺点,就是建立了一个非必要的构造函数,那这篇文章我们来谈一谈具有javascript自身特色的原型式继承。我们先来看一看下面的代码:var Ca...
分类:
编程语言 时间:
2015-04-03 12:50:12
阅读次数:
179
在JS里面,我们定义函数可以写为var A= function() { this.test= 2;};其实可以理解为A是function() { this.test= 2;};创建的一个对象,这样也便于理解JA里面的函数即为对象的概念,那么在上面的例子中A的构造函数便是function(...
分类:
编程语言 时间:
2015-04-01 12:49:04
阅读次数:
154
说明: 该教程绕开了javascript的一些基本的语法知识,直接讲解javascript中最难理解的两个部分,也是和其他主流面向对象语言区别最大的两个部分——原型和闭包,当然,肯定少不了原型链和作用域链。帮你揭开javascript最神秘的面纱。 为什么要偏偏要讲这两个知识点? 这是我在这么...
分类:
编程语言 时间:
2015-03-31 12:33:51
阅读次数:
155
前面提到的上下文环境和作用域的知识,除了了解这些知识之外,还是理解闭包的基础。至于“闭包”这个词的概念的文字描述,确实不好解释,我看过很多遍,但是现在还是记不住。但是你只需要知道应用的两种情况即可——函数作为返回值,函数作为参数传递。第一,函数作为返回值如上代码,bar函数作为返回值,赋值给f1变量...
分类:
编程语言 时间:
2015-03-31 12:17:06
阅读次数:
171
每个JavaScript函数都有prototype属性(javascript对象没有这个属性),这个属性引用了一个对象,这个对象就是原型对象。javascript允许我们修改这个原型对象。修改有2种方式。方式1:在原有的原型对象上增加属性或者方法,方式2:重写(覆盖)原型对象。如果是先创建对象,然后再修改原型,那么如果采用方式1,已经创建的对象能够正确访问修改后的原型;如果采用方式2,已经创建的对象无法访问到修改后的原型。从这个角度来看,显然方式1比方式2更好。...
分类:
编程语言 时间:
2015-03-31 09:02:24
阅读次数:
130
function Person(name){ this.name = name;}Person.prototype = { say: function(){ alert('hi'); }, sayName: function(){ alert(this.name); }};fu...
分类:
编程语言 时间:
2015-03-21 21:09:12
阅读次数:
152
只要创建了一个新函数,该函数就会有一个指向原型对象的prototype属性,而原型对象则会自动获得一个指向该函数的constructor属性。 当调用构造函数创建一个新实例后,该实例会有一个属性指向构造函数的原型对象[[Prototype]](Firefox、Chrome、Safari中该属性为__...
分类:
编程语言 时间:
2015-03-15 22:41:08
阅读次数:
142
原型模式每个函数(准确说不是类、对象)都有一个prototype属性,这个属性是一个指针,指向一个对象。使用原型对象的好处是可以让所有对象实例共享它包含的属性和方法。1.原型对象(1)当创建一个新函数,就会为该函数创建一个prototype属性,这个属性指向函数的原型对象。(2)默认情况下,所有原型...
分类:
编程语言 时间:
2015-03-09 17:30:59
阅读次数:
164