Nodejs Date ISO Format getISO8601()

Here you can find the source of getISO8601()

Method Source Code

/**//from  w  ww  .  j a v  a 2  s .  c o m
 * Provides an ISO 8601 datetime format to the Date object.
 */
Date.prototype.getISO8601 = function () {
   var month = (this.getMonth() + 1 < 10) ? "0" + this.getMonth() + 1 : this.getMonth() + 1;
   var day = (this.getDate() < 10) ? "0" + this.getDate() : this.getDate();
   var hours = (this.getHours() < 10) ? "0" + this.getHours() : this.getHours();
   var minutes = (this.getMinutes() < 10) ? "0" + this.getMinutes() : this.getMinutes();
   var seconds = (this.getSeconds() < 10) ? "0" + this.getSeconds() : this.getSeconds();

   var offset = this.getTimezoneOffset() / 60;

   return this.getFullYear() + "-" + month + "-" + day + "T" + hours + ":" + minutes + ":" + seconds + "-0" + offset + "00";
};

Related

  1. getISODate()
    Date.prototype.getISODate = function()
      var mth = this.getMonth() + 1;
      mth = (mth < 10 ? '0' : '') + mth;
      var date = this.getDate();
      date = (date < 10 ? '0' : '') + date;
      return this.getFullYear() + mth + date;
    };
    
  2. getISODate()
    Date.prototype.getISODate = function () {
      let month = this.getMonth() + 1;
      if (month < 10) month = '0' + month;
      let day = this.getDate();
      if (day < 10) day = '0' + day;
      return this.getFullYear() + '-' + month + '-' + day;
    };
    
  3. getISODay()
    Date.prototype.getISODay = function(){
        return (this.getDay() + 6) % 7;
    
  4. getISOWeek()
    Date.prototype.getISOWeek = function () {
      var target = new Date(this.valueOf());
      var dayNr = (this.getDay() + 6) % 7;
      target.setDate(target.getDate() - dayNr + 3);
      var firstThursday = target.valueOf();
      target.setMonth(0, 1);
      if (target.getDay() != 4) {
        target.setMonth(0, 1 + ((4 - target.getDay()) + 7) % 7);
      return 1 + Math.ceil((firstThursday - target) / 604800000);