convert.js
998 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/**
* convert time into another unit
*/
function convert(val, sourceUnitName, destinationUnitName){
destinationUnitName = destinationUnitName || 'ms';
return (val * getUnit(sourceUnitName)) / getUnit(destinationUnitName);
}
//TODO: maybe extract to a separate module
function getUnit(unitName){
switch(unitName){
case 'ms':
case 'millisecond':
return 1;
case 's':
case 'second':
return 1000;
case 'm':
case 'minute':
return 60000;
case 'h':
case 'hour':
return 3600000;
case 'd':
case 'day':
return 86400000;
case 'w':
case 'week':
return 604800000;
default:
throw new Error('"'+ unitName + '" is not a valid unit');
}
}
module.exports = convert;