javascript对象
1. json对象
var obj = {data:1, function: function(){}}
2. function对象
var class = function(param){
this.priviledgedata = param; //this.priviledgedata 是privileged成员
var privatedata = 1; //privatedata 是private成员
this.priviledgefunction = function(){
}
var privatefunction = function(){
}
}
class.prototype.publicdata = 1;
class.prototype.publicfunction=function(){};
priviledge 成员类似c++的public成员,可以被外界访问,也可以访问private成员。
private成员 可以被定义在class中所有成员访问,但是private成员只可以访问private成员。
private和priviledge都是定义在对象中,所以每一个对象都需要分配空间。
prototype可以用来做继承,成员有点类似c++中的static成员,在class中只有一份内存,但是访问权限不同,prototype中的public成员不可访问class中的private成员,还有不同的就是要通过对象才能访问。
对象访问属性的方法是寻找自身的属性和方法,然后在查找构造的原型链prototype。