Skip to content

Instantly share code, notes, and snippets.

@WebReflection
Last active September 7, 2023 03:00
Show Gist options
  • Save WebReflection/6076a40777b65c397b2b9b97247520f0 to your computer and use it in GitHub Desktop.
Save WebReflection/6076a40777b65c397b2b9b97247520f0 to your computer and use it in GitHub Desktop.
// https://webreflection.medium.com/using-the-input-datetime-local-9503e7efdce
Date.prototype.toDatetimeLocal =
function toDatetimeLocal() {
var
date = this,
ten = function (i) {
return (i < 10 ? '0' : '') + i;
},
YYYY = date.getFullYear(),
MM = ten(date.getMonth() + 1),
DD = ten(date.getDate()),
HH = ten(date.getHours()),
II = ten(date.getMinutes()),
SS = ten(date.getSeconds())
;
return YYYY + '-' + MM + '-' + DD + 'T' +
HH + ':' + II + ':' + SS;
};
Date.prototype.fromDatetimeLocal = (function (BST) {
// BST should not be present as UTC time
return new Date(BST).toISOString().slice(0, 16) === BST ?
// if it is, it needs to be removed
function () {
return new Date(
this.getTime() +
(this.getTimezoneOffset() * 60000)
).toISOString();
} :
// otherwise can just be equivalent of toISOString
Date.prototype.toISOString;
}('2006-06-06T06:06'));
@WebReflection
Copy link
Author

@Olimarrex I am not sure anyone needs that in 2022 but it's easy to solve too?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment