泛型类型

//In Javascript there are no generics
class Vehicle {
    test() {
        console.log("test: " + this.constructor.name);
    }
}

class Car extends Vehicle { }

class Truck extends Vehicle { }

let list = [];
let vehicle = new Vehicle();
let car = new Car();
let truck = new Truck();

list.push(vehicle);
list.push(car);
list.push(truck);

for (let curVehicle of list) {
    curVehicle.test();
}