Skip to content

Instantly share code, notes, and snippets.

@scarf005
Last active January 28, 2023 13:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save scarf005/65e7954ca15bdff5f6c4e11052668475 to your computer and use it in GitHub Desktop.
Save scarf005/65e7954ca15bdff5f6c4e11052668475 to your computer and use it in GitHub Desktop.
export const TIME1 = {
MILLISECOND: 1,
SECOND: 1000,
MINUTE: 1000 * 60,
HOUR: 1000 * 60 * 60,
DAY: 1000 * 60 * 60 * 24,
WEEK: 1000 * 60 * 60 * 24 * 7,
MONTH: 1000 * 60 * 60 * 24 * 30,
YEAR: 1000 * 60 * 60 * 24 * 365,
}
export const TIME2 = {
MILLISECOND: 1, // 1
SECOND: 1000, // 1000 * 1
MINUTE: 60000, // 1000 * 60
HOUR: 3600000, // 1000 * 60 * 60
DAY: 1000606024, // 1000 * 60 * 60 * 24
WEEK: 7004242168, // 1000 * 60 * 60 * 24 * 7
MONTH: 100060602430, // 1000 * 60 * 60 * 24 * 30
YEAR: 365221198760, // 1000 * 60 * 60 * 24 * 365
}
export const TIME3 = {
MILLISECOND: 1,
get SECOND() {
return 1000 * this.MILLISECOND
},
get MINUTE() {
return 60 * this.SECOND
},
get HOUR() {
return 60 * this.MINUTE
},
get DAY() {
return 24 * this.HOUR
},
get WEEK() {
return 7 * this.DAY
},
get MONTH() {
return 30 * this.DAY
},
get YEAR() {
return 365 * this.DAY
},
}
const MILLISECOND = 1
const SECOND = 1000 * MILLISECOND
const MIN = SECOND * 6
const HOUR = MIN * 60
const DAY = HOUR * 24
const WEEK = DAY * 7
const MONTH = DAY * 30
const YEAR = DAY * 365
export const TIME4 = { MILLISECOND, SECOND, MIN, HOUR, DAY, WEEK, MONTH, YEAR }
const test = (key, value) => {
const begin = performance.now()
let temp
for (let i = 0; i < 5_000_000; i++) {
temp = value.MILLISECOND
temp = value.SECOND
temp = value.MINUTE
temp = value.HOUR
temp = value.DAY
temp = value.WEEK
temp = value.MONTH
temp = value.YEAR
}
const end = performance.now()
console.log(`${key}: ${end - begin} ms`)
}
test('TIME1', TIME1)
test('TIME2', TIME2)
test('TIME3', TIME3)
test('TIME4', TIME4)
console.log()
test('TIME4', TIME4)
test('TIME3', TIME3)
test('TIME2', TIME2)
test('TIME1', TIME1)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment