几种属性:

先看代码,这段代码中出现了类定义中可能使用到5种属性或者变量

01 function car(param1,param2){
02     //构造变量
03     var varProperty = 'This is a var Perperty';
04     //构造属性
05     this.constructProperty = 'This is a construct Property'
06 }
07  
08 //原形属性
09 car.prototype.prototypeProperty = 'This is a prototype property';
10  
11 //静态属性
12 car.staticProperty = 'This is a static property';

构造变量 使用VAR声明和定义,它的作用域仅限于构造方法内部,包括在构造器内部定义的所有方法(构造方法)。直接通过变量名访问:varProperty。有些文章也把叫做私有属性,从作用域上看,它是私有的,但它不是属性,类的原型是无法访问它的。

构造参数 就是上述代码中的 param1,param2,它与构造变量有相同的作用域和方法方式

01 function car(param1,param2){
02     //构造变量
03     var varProperty = 'This is a var Perperty';
04  
05     echo(varProperty);
06     echo(param1);
07  
08     this.someMethod = function(){
09         echo(varProperty);
10         echo(param1);
11      };
12 }

相关文章: