JavaScript教程-JavaScript抽象化
抽象化是一种隐藏实现细节,仅向用户展示功能的方式。换句话说,它忽略了不相关的细节,只显示所需的部分。
需要记住的要点
- 我们不能创建抽象类的实例。
- 它减少了代码的重复。
JavaScript抽象化示例
示例1
让我们检查是否可以创建抽象类的实例。
// 创建一个构造函数
function Vehicle() {
this.vehicleName = vehicleName;
throw new Error("You cannot create an instance of the Abstract class");
}
Vehicle.prototype.display = function() {
return this.vehicleName;
};
var vehicle = new Vehicle();
示例2
让我们看一个实现抽象化的示例。
// 创建一个构造函数
function Vehicle() {
this.vehicleName = "vehicleName";
throw new Error("You cannot create an instance of the Abstract class");
}
Vehicle.prototype.display = function() {
return "Vehicle is: " + this.vehicleName;
};
// 创建一个构造函数
function Bike(vehicleName) {
this.vehicleName = vehicleName;
}
// 不使用函数构造器创建对象
Bike.prototype = Object.create(Vehicle.prototype);
var bike = new Bike("Honda");
document.writeln(bike.display());
输出:
Vehicle is: Honda
示例3
在此示例中,我们使用instanceof
运算符测试对象是否引用相应的类。
// 创建一个构造函数
function Vehicle() {
this.vehicleName = vehicleName;
throw new Error("You cannot create an instance of the Abstract class");
}
// 创建一个构造函数
function Bike(vehicleName) {
this.vehicleName = vehicleName;
}
Bike.prototype = Object.create(Vehicle.prototype);
var bike = new Bike("Honda");
document.writeln(bike instanceof Vehicle);
document.writeln(bike instanceof Bike);
输出:
true true