vehicle を拡張する「car」クラスを作成すると、 vehicle.prototype がプロトタイプとして使用されるか、または vehicle の新しいインスタンスが使用されますか?
ない。を単純に拡張しvehicle.prototype
たり、インスタンス ( new vehicle
) を作成したりしません。
代わりに、車両プロトタイプから継承する新しいオブジェクトを適切に作成します。
Car.prototype = Object.create(Vehicle.prototype);
ただし、実際にはそれ以上のことを行います。最大最小クラスの提案では、はプロトタイプ演算子( archived )extends
に関して定義されています。<|
class Car extends Vehicle { constructor(){} }
と同等です
const Car = Vehicle <| function Car(){};
ES5では次のようになります
function Car(){}
Car.__proto__ = Vehicle; // not so much ES5
Car.prototype = Object.create(Vehicle.prototype);