我对创建时间转换器有些怀疑。 我创建了Time wich类,可以将时间转换为毫秒,秒, 分钟,小时和天。尽管我很容易做到,但是我不确定我的代码是 清洁。实际上,我创建了枚举DurationType,每个元素都包含 允许在毫秒内转换的产品。那让我 有30行代码,但是将值乘以DurationType.HOUR似乎很奇怪。
"use strict";
const DurationType = {
DAY: 24*60*60*1000,
HOUR: 60*60*1000,
MINUTE: 60*1000,
SECOND:1000,
MILLISECOND: 1
}
"use strict";
class Time {
constructor(value, type=DurationType.MILLISECOND) {
this.setValue(value, type);
}
getValueIn(type=DurationType.MILLISECOND) {
return convertTo(this.value, DurationType.MILLISECOND, type);
}
setValue(value, type) {
this.value = Time.convertTo(value, type, DurationType.MILLISECOND);
}
static convertTo(value, type, wantedType) {
if(!(wantedType instanceof DurationType))
return error("wantedType isn't an instance of DurationType", 1); // display the error message and return 1
return value*type/wantedType;
}
}