Skip to content

Instantly share code, notes, and snippets.

@raunakp
Last active September 22, 2018 03:32
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 raunakp/f3b311bed6e013dccb0d8f40358cc4f3 to your computer and use it in GitHub Desktop.
Save raunakp/f3b311bed6e013dccb0d8f40358cc4f3 to your computer and use it in GitHub Desktop.
var moment = require('moment-timezone')
var assert = require('assert')
function convertCustomDateFormat1 (dateStr) {
/*
timeStamp: "21Sep18-23:24:33",
To
2018-09-21 23:24:33.49+00
*/
var event = moment.tz(dateStr, 'DMMMYY-HH:mm:ss.SS', 'UTC')
// converts to 2018-09-21 23:24:33.49+00:00
var str = event.format('YYYY-MM-D HH:mm:ss.SSZ')
// hack to remove trailing :00
// TODO: check if moment provides APIs to do this
if (str.endsWith(':00')) {
str = str.split(':').slice(0, -1).join(':')
}
return str
}
var str = convertCustomDateFormat1('21Sep18-23:24:33.49')
assert.equal(str, '2018-09-21 23:24:33.49+00')
str = convertCustomDateFormat1('41Sep18rr-23:24:33')
assert.equal(str, 'Invalid date')
str = convertCustomDateFormat1('1Jan17-00:00:11')
assert.equal(str, '2017-01-1 00:00:11.00+00')
str = convertCustomDateFormat1('21Sep18-23:24:33')
assert.equal(str, '2018-09-21 23:24:33.00+00')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment