美文网首页
js时间格式化成字符串

js时间格式化成字符串

作者: 芸芸众生ing | 来源:发表于2019-07-20 15:41 被阅读0次

调用 formatDate()方法 , 默认返回 '2019-09-20 20:00:00' 格式的字符串。
参数一: time 指定格式化后返回的时间,可以是任何能被 Date 对象解析的数据。
参数二: format 需要返回的时间格式。
参数三: utc 相对零时区转换

/** 时间格式化函数
 * @param {String} Time 可以被 Date 对象解析的任何字符串
 * @param {String} Format 时间格式 "YYYY-MM-DD hh:mm:ss"
 * @return {String} 返回 Format 参数指定格式的时间字符串
 */

function formatDate(
  time = new Date(),
  format = "YYYY-MM-DD hh:mm:ss",
  utc = null
) {
  try {
    time = new Date(time);
  } catch (error) {
    console.error("Wrong time type:", error);
    time = new Date();
  }

  if (utc === false)
    time = new Date(
      time.getTime() - new Date().getTimezoneOffset() * 60 * 1000
    );

  if (utc === true)
    time = new Date(
      time.getTime() + new Date().getTimezoneOffset() * 60 * 1000
    );
  [
    { test: /YYYY/g, text: time.getFullYear() },
    { test: /MM/g, text: time.getMonth() + 1 },
    { test: /DD/g, text: time.getDate() },
    { test: /hh/g, text: time.getHours() },
    { test: /mm/g, text: time.getMinutes() },
    { test: /ss/g, text: time.getSeconds() },
    { test: /ms/g, text: time.getMilliseconds() }
  ].forEach(e => {
    format = format.replace(e["test"], e.text.toString().padStart(2, '0'));
  });
  return format;
};

// 比较时间
function timeCompare(time1, time2, format) {
  return +new Date(formatDate(time1, format)) == +new Date(formatDate(time2, format))
} 

相关文章

网友评论

      本文标题:js时间格式化成字符串

      本文链接:https://www.haomeiwen.com/subject/exhulctx.html