学习JavaScript有一段时间了,感觉原型那块儿又有点混乱了,现在写个笔记整理一下思路。什么是原型每创建一个函数,这个函数都会自带一个属性prototype指向一个原型对象,最初这个原型对象只包含一个属性constructor,这是指向我们创建的那个函数的指针。也就是说函数和原型对象分别通过prototype和constructor这两个属性(指针)能找到对方。我们可以通过fn.prototyp...
分类:
编程语言 时间:
2015-07-05 16:42:30
阅读次数:
117
一、关于javascript原型的基本概念:prototype属性:每个函数都一个prototype属性,这个属性指向函数的原型对象。原型对象主要用于共享实例中所包含的的属性和方法。constructor属性:每个原型对象都有一个constructor属性,这个constructor属性包含一个指向...
分类:
编程语言 时间:
2015-07-05 02:01:00
阅读次数:
132
原因:console.log() 可以打印任何类型的数据。而 alert() 只能输出string,如果alert输出是对象会自动调用toString()方法。如果想console.log() 输出的与alert相同,需要调用toString():console.log(obj.toString()...
分类:
编程语言 时间:
2015-06-30 23:31:30
阅读次数:
199
零.此文动机 用了一段时间的Lua,用惯了Java C++等有Class关键字的语言,一直对Lua的中的面向对象技术感到费解,一个开源的objectlua更是看了n遍也没理解其中的原理,直到看到了Prototype-based programming一.什么是基于原型的编程 基于原型的编程是面向.....
分类:
编程语言 时间:
2015-06-22 17:45:37
阅读次数:
106
声明式函数定义; function add(m,n) { alert(m+n); }这种方式等同于构造一个Function类的实例的方式:var add = new Function("m", "n", "alert(m+n);");
分类:
编程语言 时间:
2015-06-22 14:50:58
阅读次数:
123
function ClassA() {
var value=4;
this.getValue= function()
{
return value;
}
this.setValue= function(value)
{
this.value=value;...
分类:
编程语言 时间:
2015-06-22 11:14:02
阅读次数:
140
面向对象编程语言分类
基于类继承:比如java,C++基于原型继承:比如javascript
原型继承是动态完成的,添加到原型上的方法会即时生效,即便对象实例在新方法赋予到原型之前已经存在,也能获得新方法javascript没有块作用域,因此不同于C语言尽可能延迟声明变量,在javascript中,应该把所有的局部变量定义放在函数定义的最开始地方闭包是指外部通过调用一个函数来返...
分类:
编程语言 时间:
2015-06-18 19:52:20
阅读次数:
89
时间回到两个月前,简单地理了理原型链、prototype以及__proto__之间的乱七八糟的关系,同时也简单了解了下typeof和instanceof两个运算符,但是,anyway,试试以下两题:console.log(Function instanceof Function);console.....
分类:
编程语言 时间:
2015-06-09 11:14:04
阅读次数:
181
javaScript是一种弱类型、动态的、基于原型的语言,这种语言特性使得它非常容易、甚至是普通的方式实现其中的一些模式。单体模式的思想在于保证一个特定类仅有一个实例。这就意味着当您第二次使用同一个类创建新对象的时候,应该得到与第一次所创建对象完全相同对象。在javaScript中没有类,只有对象。当您创建一个新对象时,实际上没有其他对象与其类似,因此新对象已经是单体了。使用对象字面量创建一个简单的...
分类:
编程语言 时间:
2015-06-08 17:21:11
阅读次数:
118
彻底理解Javascript原型继承之前写过一篇Javascript继承主题的文章,这篇文章作为一篇读书笔记,分析的不够深入。本文试图进一步思考,争取彻底理解Javascript继承原理实例成员与原型成员举一个《高性能Javascript》书中例子var book={ title :"High...
分类:
编程语言 时间:
2015-06-05 15:18:41
阅读次数:
162