JS格式化时间(支持小程序,兼容IOS)

const REGEX = /(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})/export const formatTime = (val, format)=>{    if (val) {        /**         * @instructions 如果不是时间戳格式,且含有字符 ‘-‘ 则将 ‘-‘ 替换成 ‘/‘ && 删除小数点及后面的数字         * @reason 将 ‘-‘ 替换成 ‘/‘ && 删除小数点及后面的数字 的原因是safari浏览器仅支持 ‘/‘ 隔开的时间格式         */        if (val.toString().indexOf(‘-‘) > 0) {            val = val.replace(/T/g, ‘ ‘).replace(/\.[\d]{3}Z/, ‘‘).replace(/(-)/g, ‘/‘); // 将 ‘-‘ 替换成 ‘/‘            val = val.slice(0, val.indexOf(".")); // 删除小数点及后面的数字        }        let date = new Date(val);        date.setHours(date.getHours() + 8);        const [whole, yy, MM, dd, hh, mm, ss] = date.toISOString().match(REGEX);        const year = new Date().getFullYear();        const month = new Date().getMonth() + 1;        const dates = new Date().getDate();        if (format) {            return format                .replace(‘yyyy‘, yy)                .replace(‘yy‘, yy.slice(2))                .replace(‘MM‘, MM)                .replace(‘dd‘, dd)                .replace(‘hh‘, hh)                .replace(‘mm‘, mm)                .replace(‘ss‘, ss)        } else {            return [yy, MM, dd].join(‘-‘) + ‘ ‘ + [hh, mm, ss].join(‘:‘);        }    } else {        return ‘--‘;    }}

原文地址:https://www.cnblogs.com/Man-Dream-Necessary/p/8352190.html

时间: 2024-08-01 22:33:28

JS格式化时间(支持小程序,兼容IOS)的相关文章

小程序取消IOS虚拟支付解决方案

前因 本来我们的小程序用的好好的,结果突然有一天,微信就把小程序的ios端的虚拟支付给关了...坑爹啊!搞的安卓端的可以支付,ios的支付不了.于是就在网上找解决办法. 一说通过app跳转支付,总不能为了个ios的支付再去整个app吧……( ̄▽ ̄)" 二是把虚拟支付搞成实体商品,线下发货.小本经营,搞不起搞不起……ε=ε=ε=(~ ̄▽ ̄)~ 三是免费.wqndy……( o=^•ェ•)o ┏━┓ 四是通过公众号支付.(o?v?)ノ 那肯定是四没跑了.但是这是第一篇,没有代码!(.^▽^) 还在测试

js 格式化时间日期函数小结

下面是脚本之家为大家整理的一些格式化时间日期的函数代码,需要的朋友可以参考下. 代码如下: Date.prototype.format = function(format){ var o = { "M+" : this.getMonth()+1, //month "d+" : this.getDate(), //day "h+" : this.getHours(), //hour "m+" : this.getMinutes(

c++时间处理小程序

#include <time.h> #include <stdio.h> #include<iostream> using namespace std; int main( void ) { time_t t = time(0); char tmp[64]; strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) ); puts( tmp ); system(&

纯正商业级应用-Node.js Koa2开发微信小程序服务端

第1章 前言.导学与node.js如何理解Node.js?前端到底要不要学习Node.js?本课程能让你学到什么? 第2章 Koa2的那点事儿与异步编程模型Koa非常的精简,基本上,没有经过二次开发的Koa根本“不能”用.本章我们讲解Koa的重要特性,理解什么是洋葱模型?以及在KOA中如何进行异步编程?很多同学都了解以上知识点,但听完本章,你会有一些不一样的理解,比如:为什么要有洋葱模型?没有会怎样?Koa中间件一定是异步的吗? ... 第3章 路由系统的改造Koa-router需要进行一些改造

前端面试题总结(js、html、小程序、React、ES6、Vue、算法、全栈热门视频资源)持续更新 &#362414;

原文: http://blog.gqylpy.com/gqy/438 置顶:来自一名75后老程序员的武林秘籍--必读(博主推荐) 来,先呈上武林秘籍链接:http://blog.gqylpy.com/gqy/401/ 你好,我是一名极客!一个 75 后的老工程师! 我将花两分钟,表述清楚我让你读这段文字的目的! 如果你看过武侠小说,你可以把这个经历理解为,你失足落入一个山洞遇到了一位垂暮的老者!而这位老者打算传你一套武功秘籍! 没错,我就是这个老者! 干研发 20 多年了!我也年轻过,奋斗过!我

微信小程序里解决app.js onLaunch事件与小程序页面的onLoad加载前后异常问题

使用 Promise 解决小程序页面因为需要app.js onLaunch 参数导致的请求失败 app.js onLaunch 的代码 1 "use strict"; 2 Object.defineProperty(exports, "__esModule", { 3 value: true 4 }); 5 const http = require('./utils/http.js'); 6 const api = require('./config.js'); 7

js 格式化时间/Date(1425027069000)/格式化为yyyy-MM-dd HH:mm:ss

//格式化时间[参数是一个字符串,格式类似于 /Date(1425027069000)/ ] function formatDate(n) { var s = n.slice(6, 21); dt = new Date(parseInt(n.slice(6, 21))); var year = dt.getFullYear();; var month = dt.getMonth() + 1; var date = dt.getDate(); var hour = dt.getHours(); v

mpvue支持小程序的分包加载

这个功能可以说是让我们这些用mpvue的等的很焦灼,眼看着项目的大小一天天地逼近2M,mpvue还不能很好地支持分包加载,这可咋整?好消息是最近mpvue要支持分包加载了,不过目前在develop分支下面.下面我们一步步来看看怎么初始化一个支持分包加载的mpvue项目. clone mpvue-quickstart模板 初始化一个mpvue项目是基于mpvue-quickstart项目模板的,使用的是下面的命令: vue init mpvue/mpvue-quickstart my-projec

js格式化时间

Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "H+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds()