// 编码挑战 #2
/*
- 重新创建挑战 1,但这次使用 ES6 类;
a. 添加一个名为 “speedUS ”的获取器,返回当前速度(单位:mi/h)(除以 1.6);
3.
a. 添加一个名为 “speedUS ”的setter,用于设置当前速度(单位为 mi/h)(但在存储值之前要将其转换为 km/h,即输入值乘以 1.6);
4.
a. 创建一辆新汽车,尝试使用加速和制动方法以及 getter 和 setter。
数据 汽车 1:“福特”,时速 120 公里
祝你好运
*/
● 首先先将之前的函数改造成class类的方式
class CarCl {
constructor(make, speed) {
this.make = make;
this.speed = speed;
}
accelerate() {
this.speed += 10;
console.log(`${this.make} 速度为${this.speed}km/h`);
}
brake() {
this.speed -= 5;
console.log(`${this.make}速度为${this.speed}km/h`);
}
}
● 剩下的就很简单了,参考答案如下
class CarCl {
constructor(make, speed) {
this.make = make;
this.speed = speed;
}
accelerate() {
this.speed += 10;
console.log(`${this.make} 速度为${this.speed}km/h`);
}
brake() {
this.speed -= 5;
console.log(`${this.make}速度为${this.speed}km/h`);
}
get speedUS() {
return this.speed / 1.6;
}
set speedUS(speed) {
this.speed = speed * 1.6;
}
}
const ford = new CarCl('福特', 120);
console.log(ford.speedUS);
ford.accelerate();
ford.accelerate();
ford.brake();
ford.speedUS = 50;
console.log(ford);