js格式化iso 8601格式的日期为其他格式-处理默认golang time类型格式问题

golang time类型格式默认序列化为json的时候,是iso 8601格式

比如:

2023-03-09T23:43:43+08:00

ISO 8601 格式的时间表示法,常用于表示世界范围内的时间和日期。ISO 8601 格式使用连字符 "-" 分隔日期和时间部分,并以字母 "T" 分隔日期和时间部分,其中 "T" 后面跟着时间部分。在这个时间表示中,"2023-03-09" 表示日期部分,"23:43:43+08:00" 表示时间部分和时区偏移量。其中,"+08:00" 表示相对于 UTC 时间偏移了 8 个小时,也就是北京时间。

可以使用下面的函数进行格式化

function formatDate(dateString, format = 'yyyy-MM-dd HH:mm:ss') {
  const date = new Date(dateString);

  const year = date.getFullYear();
  const month = String(date.getMonth() + 1).padStart(2, '0');
  const day = String(date.getDate()).padStart(2, '0');
  const hour = String(date.getHours()).padStart(2, '0');
  const minute = String(date.getMinutes()).padStart(2, '0');
  const second = String(date.getSeconds()).padStart(2, '0');

  const formattedDate = format
    .replace(/yyyy/g, year)
    .replace(/MM/g, month)
    .replace(/dd/g, day)
    .replace(/HH/g, hour)
    .replace(/mm/g, minute)
    .replace(/ss/g, second);

  return formattedDate;
}

// 示例用法
console.log(formatDate('2022-03-09 23:43:43')); // 输出:2022-03-09 23:43:43
console.log(formatDate('03/09/2022', 'yyyy年MM月dd日')); // 输出:2022年03月09日
console.log(formatDate('09 Mar 2022 23:43:43 GMT', 'yyyy-MM-dd HH:mm:ss')); // 输出:2022-03-09 23:43:43
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Vue3中进行日期格式转换有多种方法。首先,你可以使用`Date.parse()`函数将指定的日期字符串转换为时间戳。例如,如果要将"2022-08-17 09:54:48"转换为时间戳,可以在Vue模板中使用以下代码: ```html <template> <div> <h3>将"2022-08-17 09:54:48"转换为时间戳:</h3> <h4>{{ conversion_time2 }}</h4> </div> </template> <script> export default { data() { return { conversion_time2: Date.parse('2022-08-17 09:54:48') } } } </script> ``` 这样就可以将指定的日期转换为时间戳并显示出来。 另外,如果你想将指定的日期字符串转换标准时间格式,可以使用`new Date()`函数。以下是在Vue模板中进行转换的示例代码: ```html <template> <div> <h3>将"2022-08-17 09:54:48"转换标准时间格式:</h3> <h4>{{ conversion_time }}</h4> </div> </template> <script> export default { data() { return { conversion_time: new Date('2022-08-17 09:54:48') } } } </script> ``` 这样就可以将指定的日期转换标准时间格式并显示出来。 另外,如果你想获取当前时间的时间戳,可以使用`Date.parse(new Date())`。以下是在Vue模板中获取当前时间戳的示例代码: ```html <template> <div> <h3>获取当前时间的时间戳:{{ current_timestamp }}</h3> </div> </template> <script> export default { data() { return { current_timestamp: '' } }, created() { this.getnowtimestamp(); }, methods: { getnowtimestamp() { var date = new Date(); this.current_timestamp = Date.parse(date); } } } </script> ``` 这样就可以获取当前时间的时间戳并显示出来。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [vue 时间格式总结及转换](https://blog.csdn.net/EvaY_Yang/article/details/126366056)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值