Skip to content

Instantly share code, notes, and snippets.

@edo9k
Created May 15, 2020 03:02
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save edo9k/2e59457e2f5519db47927de3db885536 to your computer and use it in GitHub Desktop.
Comparando datas como string, date e moment (Javascript)
const m = require('moment')
const [ontem, hoje, amanha] = [ '2020-05-13', '2020-05-14', '2020-05-15' ]
const igual = (a,b) => a == b
const igualStrict = (a,b) => a === b
const maiorQue = (a,b) => a > b
const menorQue = (a,b) => a < b
const comparaString = (a, b, op) => op(a, b)
const comparaDate = (a, b, op) => op( new Date(a), new Date(b) )
const comparaMoment = (a, b, op) => op( m(a), m(b) )
console.log('Comparação: ontem é maior que hoje? -- false')
console.log(`comparação string: ${ comparaString(ontem, hoje, maiorQue) }`)
console.log(`comparação date: ${ comparaDate(ontem, hoje, maiorQue) }`)
console.log(`comparação moment: ${ comparaMoment(ontem, hoje, maiorQue) }`)
console.log('---')
console.log('Comparação: hoje é menor que amanhã? -- true')
console.log(`comparação string: ${ comparaString(hoje, amanha, menorQue) }`)
console.log(`comparação date: ${ comparaDate(hoje, amanha, menorQue) }`)
console.log(`comparação moment: ${ comparaMoment(hoje, amanha, menorQue) }`)
console.log('---')
console.log('Comparação: hoje é igual a hoje? -- true')
console.log(`comparação string: ${ comparaString(hoje, hoje, igual) }`)
console.log(`comparação date: ${ comparaDate(hoje, hoje, igual) }`)
console.log(`comparação moment: ${ comparaMoment(hoje, hoje, igual) }`)
console.log('---')
console.log('Comparação: hoje é igual (strict) a hoje? -- true')
console.log(`comparação string: ${ comparaString(hoje, hoje, igualStrict) }`)
console.log(`comparação date: ${ comparaDate(hoje, hoje, igualStrict) }`)
console.log(`comparação moment: ${ comparaMoment(hoje, hoje, igualStrict) }`)
console.log('---')
Comparação: ontem é maior que hoje? -- false
comparação string: false
comparação date: false
comparação moment: false
---
Comparação: hoje é menor que amanhã? -- true
comparação string: true
comparação date: true
comparação moment: true
---
Comparação: hoje é igual a hoje? -- true
comparação string: true
comparação date: false
comparação moment: false
---
Comparação: hoje é igual (strict) a hoje? -- true
comparação string: true
comparação date: false
comparação moment: false
---
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment