在js里,一般是通过构造函数来定义一个类:
function Range(from, to) {
this.from = from;
this.to = to;
}
Range.prototype.includes = function(x) {
return this.form <= x && x <= this.to;
};
Range.prototype.foreach = function(f) {
for (var x = Math.ceil(this.from); x <= this.to; x++)
f(x);
};
Range.prototype.toString = function() {
return "(" + this.from + "..." + this.to + ")";
};
Range.ZERO = new Range(0, 0);
这个Range类中定义了一个接受两个参数的构造函数,和includes、foreach、toString三个实例方法,以及ZERO一个静态类方法。
实现类的继承一种方法如下: