1
0
mirror of https://github.com/lana-k/sqliteviz.git synced 2025-12-06 18:18:53 +08:00

change period format

This commit is contained in:
lana-k
2021-05-05 15:08:54 +02:00
parent 9fff1d699a
commit 4619461af8
2 changed files with 10 additions and 39 deletions

View File

@@ -1,36 +1,7 @@
export default {
getPeriod (start, end) {
let diff = end.getTime() - start.getTime()
let result = ''
const days = Math.floor(diff / (1000 * 60 * 60 * 24))
diff -= days * (1000 * 60 * 60 * 24)
if (days) {
result += days + ' d '
}
const hours = Math.floor(diff / (1000 * 60 * 60))
diff -= hours * (1000 * 60 * 60)
if (hours) {
result += hours + ' h '
}
const mins = Math.floor(diff / (1000 * 60))
diff -= mins * (1000 * 60)
if (mins) {
result += mins + ' m '
}
const seconds = Math.floor(diff / (1000))
diff -= seconds * (1000)
if (seconds) {
result += seconds + ' s '
}
if (diff) {
result += diff + ' ms '
}
return result.replace(/\s$/, '')
const diff = end.getTime() - start.getTime()
const seconds = diff / 1000
return seconds.toFixed(3) + 's'
}
}

View File

@@ -6,18 +6,18 @@ describe('time.js', () => {
// 1.01.2021 13:00:00 000
let start = new Date(2021, 0, 1, 13, 0, 0, 0)
// 3.01.2021 22:15:20 500
let end = new Date(2021, 0, 3, 22, 15, 20, 500)
// 1.01.2021 13:01:00 500
let end = new Date(2021, 0, 1, 13, 1, 0, 500)
expect(time.getPeriod(start, end)).to.equal('2 d 9 h 15 m 20 s 500 ms')
expect(time.getPeriod(start, end)).to.equal('60.500s')
// 1.01.2021 13:00:00 000
start = new Date(2021, 0, 1, 13, 0, 0, 0)
// 1.01.2021 22:00:20 000
end = new Date(2021, 0, 1, 22, 0, 20, 0)
// 1.01.2021 13:00:20 500
end = new Date(2021, 0, 1, 13, 0, 20, 500)
expect(time.getPeriod(start, end)).to.equal('9 h 20 s')
expect(time.getPeriod(start, end)).to.equal('20.500s')
// 1.01.2021 13:00:00 000
start = new Date(2021, 0, 1, 13, 0, 0, 0)
@@ -25,6 +25,6 @@ describe('time.js', () => {
// 1.01.2021 13:00:00 45
end = new Date(2021, 0, 1, 13, 0, 0, 45)
expect(time.getPeriod(start, end)).to.equal('45 ms')
expect(time.getPeriod(start, end)).to.equal('0.045s')
})
})