JavaScript Native Time Format Function

{ Function Define }

Date.prototype.Format = function (fmt) {
  var o = {
    'q+': Math.floor((this.getMonth() + 3) / 3), //Quarter
    'M+': this.getMonth() + 1, //Month
    'd+': this.getDate(), //Day
    'h+': this.getHours(), //Hour
    'm+': this.getMinutes(), //Minute
    's+': this.getSeconds(), //Second
    'S': this.getMilliseconds() //MilliSecond
  };

  if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));

  for (var k in o)
  if (new RegExp('(' + k + ')').test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)));

  return fmt;
}

 

{ Use Code }

var time1 = new Date().Format("yyyy-MM-dd"); //2017-01-01
var time2 = new Date().Format("yyyy-MM-dd HH:mm:ss"); //2017-01-01 12:12:12