1.类属性和类方法
类属性用来记录该类的某个性质而与具体的实例无关,无论声明多少它的实例,该属性仅此一个。
类属性的访问方式是通过类本身来访问的,例:Number.MAX_VALUE;
Number为类名,MAX_VALUE为该类的一个类属性。类属性实质是一个全局变量。在JavaScript中定义类属性是通过构造函数本身声明属性,例:Circle.pi=3.14;
类方法同样与类本身有联系的方法,它是通过类来调用的。由于类方法不是通过某上实例调用的,因此类方法中不能使用this关键字。
function CircleClass(radius)

...{
this.r = radius; //r是定义在构造函数中的实例属性
}
//PI是类属性,应该说它是构造函数这一对象的属性
CircleClass.PI = 3.14159;
//计算圆面积函数,由于使用this关键字,它只能通过实例调用

function Circle_area()...{
return CircleClass.PI*this.r*this.r;
}
//通过赋值给CircleClass的原型对象的area属性,实现该实例函数
CircleClass.prototype.area = Circle_area;
//比较两个圆半径的长短,返回较大圆的函数

function Circle_max(a,b)...{
if(a.r > b.r)
return a;
else
return b;
}
//该函数显然不应该是通过某一实例调用的实例函数,应定义为类函数
CircleClass.max = Circle_max;
var c = new CircleClass(1.0);
c.r = 1;
document.write("c.r=" + c.r + "<br/>");
var a = c.area();
document.write("a=" + a + "<br/>");
var x = Math.exp(CircleClass.PI);
document.write("x=" + x + "<br/>");
var d = new CircleClass(1.2);
var bigger = CircleClass.max(c,d);
document.write("bigger.r=" + bigger.r + "<br/>");
访问对象的属性是通过操作符“.”,另一方法是用“[ ]”将对象作为联合数组来使用。
例:object .proterty 或object [property] 都是合法的,但object ."pro"+"perty" 和 object ["pro"+"perty"] 只有后者才可以。
类属性用来记录该类的某个性质而与具体的实例无关,无论声明多少它的实例,该属性仅此一个。
类属性的访问方式是通过类本身来访问的,例:Number.MAX_VALUE;
Number为类名,MAX_VALUE为该类的一个类属性。类属性实质是一个全局变量。在JavaScript中定义类属性是通过构造函数本身声明属性,例:Circle.pi=3.14;
类方法同样与类本身有联系的方法,它是通过类来调用的。由于类方法不是通过某上实例调用的,因此类方法中不能使用this关键字。


































访问对象的属性是通过操作符“.”,另一方法是用“[ ]”将对象作为联合数组来使用。
例:object .proterty 或object [property] 都是合法的,但object ."pro"+"perty" 和 object ["pro"+"perty"] 只有后者才可以。