当前位置: 首页 > 面试题库 >

写一个格式化时间的方法

施知
2023-03-14
本文向大家介绍写一个格式化时间的方法相关面试题,主要包含被问及写一个格式化时间的方法时的应答技巧和注意事项,需要的朋友参考一下
function dateToString(date, format = 'yyyy-MM-dd') {
  const d = new Date(date);
  let result = format;
  const _config = {
    'y+': d.getFullYear(),
    'M+': d.getMonth() + 1, // 月
    'd+': d.getDate(), // 日
    'h+': d.getHours(), // 小时
    'm+': d.getMinutes(), // 分
    's+': d.getSeconds(), // 秒
  };

  for (const reg in _config) {
    if (!(new RegExp(`(${reg})`).test(result))) continue;
    const match = RegExp.$1;
    let num = `${_config[reg]}`;
    while (num.length < match.length) { num = `0${num}` }
    result = result.replace(match, num);
  }

  return result;
}
function stringToDate(str, format = 'yyyy-MM-dd') {
  let args = [/y+/, /M+/, /d+/, /h+/, /m+/, /s+/];
  args = args.reduce((re, reg, index) => {
    const match = format.match(reg);
    const defaultValue = [1970, 0, 1, 0, 0, 0][index];
    if (!match) return re.concat([defaultValue]);
    var index = match.index;
    const num = Number(str.slice(index).match(/\d+/));
    return re.concat([num]);
  }, []);
  args.unshift(null);
  return new(Date.bind.apply(Date, args));
}
 类似资料:
  • 本文向大家介绍写一个格式化金额的方法相关面试题,主要包含被问及写一个格式化金额的方法时的应答技巧和注意事项,需要的朋友参考一下 为啥题目描述总这么含糊不清。。。 如果是格式成三位一逗的话 感谢 @SCLeoX 提醒 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NumberForma

  • For %U, all days in a new year preceding the first Sunday are considered to be in week 0. For %W, all days in a new year preceding the first Monday are considered to be in week 0. In some implementati

  • 因此,我试图使用SimpleDateFormat获取用户输入,但我不断得到错误,线程“main”java.lang.IllegalArgumentException:无法将给定对象格式化为日期 不确定如何让字符串接受信息并转换它,或者是否可以这样做。任何能引导我走向正确方向的评论都将不胜感激。

  • 本文向大家介绍php格式化时间戳,包括了php格式化时间戳的使用技巧和注意事项,需要的朋友参考一下 CMS中一般显示时间比较新的文章需要显示几分钟前,几天前这样,但是一般数据库里面记录的都是时间戳(至少我习惯这样),所以就需要一个转化的过程,根据网上的资料加上自己的修改整理封装了两段代码 下面是封装好的方法 或者 更详细的 再分享一个类似的

  • DateFormat类提供各种格式来格式化时间。 将使用DateFormat.getTimeInstance()方法。 请参阅下面的示例。 在下面的示例中,我们将展示如何使用不同的格式来格式化时间。 IOTester.java import java.text.DateFormat; import java.util.Date; public class I18NTester { publi

  • 在开发过程中,我们有时会遇到这样的问题,将 2020-11-08T08:18:46+08:00 转成 2020-11-08 08:18:46,怎么解决这个问题? 解决这个问题,最好不要用字符串截取,或者说字符串截取是最笨的方法,这应该是时间格式化的问题。 我们先看一下 golang time 包中支持的 format 格式: const ( ANSIC = "Mon Jan _