网站首页 > 基础教程 正文
uniapp中的日历组件需要用到开始时间和结束时间,这个时间是字符串形式的,如'2021-01-21'。
组件网址:https://ext.dcloud.net.cn/plugin?id=56
需求
我的需求是得到7天前到现在日期的字符串形式,即
startDate: '2021-11-04'',
endDate: '2021-11-11',
上代码:
Date.prototype.format = function(fmt) {
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
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;
}
//N天时间戳,时间戳指从1970-01-01 0点开始到某天的毫秒数
function timestamp(days) {
return days * 24 * 60 * 60 * 1000
}
//几天前,一般以现在的时间为基准,参数默认值老的浏览器可能不支持。
function days_ago(day, base_time = Date.now()) {
return new Date(base_time - timestamp(day))
}
//最常用的今天、昨天、明天,返回时间戳
function yesterday(){
return days_ago(1)
}
function tomorrow(){
return days_ago(-1)
}
function today(){
return new Date()
}
///字符串格式化的日期,英文常用,如2021-01-01
function en_format(func){
return func.format('yyyy-MM-dd')
}
function en_today(){
return en_format(today())
}
function en_yesterday(){
return en_format(days_ago(1))
}
function en_tomorrow(){
return en_format(days_ago(-1))
}
function cn_format(func){
return func.format('yyyy年MM月dd日')
}
//中文版今天,如2020年02月22日
function cn_today(){
return cn_format(today())
}
//中文版昨天,如1949年10月01日
function cn_yesterday(){
return cn_format(days_ago(1))
}
//中文版明天,如2035年09月09日
function cn_tomorrow(){
return cn_format(days_ago(-1))
}
使用方法
cn_today()
'2021年11月10日'
cn_tomorrow()
'2021年11月11日'
cn_yesterday()
'2021年11月09日'
en_today()
'2021-11-10'
en_tomorrow()
'2021-11-11'
en_yesterday()
'2021-11-09'
7天前
en_format(days_ago(7))
'2021-11-03'
代码还能再精简,不过于我是已经够用了。
我是@爱玩的安哥,关注我获取更多有用知识
猜你喜欢
- 2024-11-05 JavaScript Math(算数)对象 js math.pi
- 2024-11-05 JS排序算法:冒泡、选择、插入、归并、快速、希尔、堆、计数
- 2024-11-05 javascript+css3催眠水纹动画特效
- 2024-11-05 js洗牌函数 洗牌java代码
- 2024-11-05 「译」 iOS 7 之 HTML5 综合测评:亮点、缺点和槽点
- 2024-11-05 前端必读:如何在 JavaScript 中使用SpreadJS导入和导出 Excel 文件
- 2024-11-05 嵌套地狱_解决嵌套业务逻辑_使用Js的对象_避免数组嵌套
- 2024-11-05 JavaScript排序,不只是冒泡 javascript sort排序
- 2024-11-05 web前端网页开发中常用js方法封装
- 2024-11-05 深入理解JavaScript中 fn() 和 return fn() 的区别
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- queryselectorall (63)
- location.search (79)
- bootstrap教程 (74)
- 单例 (62)
- linuxgzip (68)
- 字符串连接 (73)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)