Files
AP-Computer-Principles-Archive/mewhenimbored.ts
2025-10-27 11:50:03 -05:00

61 lines
1.5 KiB
TypeScript

enum CarType {
Sedan = 'Sedan',
SUV = 'SUV',
Hatchback = 'Hatchback',
Truck = 'Truck',
Coupe = 'Coupe',
}
enum RunsOn {
Gasoline = 'Gasoline',
Diesel = 'Diesel',
Hybrid = 'Hybrid',
Electric = 'Electric',
}
// interface ICar {
// make: string;
// model: string;
// year: number;
// body: CarType;
// powertrain: RunsOn;
// engine: string;
// mpg: number;
// link?: string;
// }
class Car {
constructor(
public make: string,
public model: string,
public year: number,
public body: CarType,
public powertrain: RunsOn,
public engine: string,
public mpg: number,
public link?: string
) {}
public info(): string {
// return `${this.year} ${this.make} ${this.model} (${this.body}) - Engine: ${this.engine}, Powertrain: ${this.powertrain}, MPG: ${this.mpg} \nAnd Visit ${this.link} for more infomation`;
let result = `${this.year} ${this.make} ${this.model} (${this.body}) - Engine: ${this.engine}, Powertrain: ${this.powertrain}, MPG: ${this.mpg}`;
if (this.link) {
result += `\nAnd Visit ${this.link} for more information`;
}
return result;
}
}
const myCar = new Car(
'Honda', // Make
'Civic', // Model
2025, // Year
CarType.Hatchback, // Body
RunsOn.Gasoline, // PowerTrain
'2L 4-Cylinder', // Engine
49,
"https://automobiles.honda.com/2024/civic-sedan/specs-features-trim-comparison"
);
console.log(myCar.info());