前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >小程序云函数获取日期

小程序云函数获取日期

原创
作者头像
谭广健
修改2021-07-02 17:49:08
2.3K0
修改2021-07-02 17:49:08
举报
文章被收录于专栏:谭广健的专栏谭广健的专栏

最近在开发一个大用户量的小程序,由于某个环节校验需要将日期进行格式存储,但由于苹果手机和安卓手机返回的日期不同导致格式存在一些小问题,本来以为写个函数搞掂;但发现不同的苹果品牌IOS返回的日期格式;在调试器里测试可以,但真机就老出问题,网上看了一下资料很多人也遇到但都没有确信可以解决的方案,于是自己写了一个云函数进行日期的获取,但又引出一个新的问题就是云函数的时区问题,当然这个已经有解决方法,这里就不再讨论。。

好吧,我们还是直接上代码:

代码语言:javascript
复制
// 云函数入口文件
//const cloud = require('wx-server-sdk')
//cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
 //const wxContext = cloud.getWXContext()  
 switch (event.action) {
 case 'now_date': {
 return ""+YDate(new Date());
 };
 case 'now_time': {
 return ""+YTime(new Date());
 };
 case 'get_date': {
 var addday=event.addDay;
 console.log("|===>"+addday);
 if(!addday){
 addday=0;
 }
 console.log(addday);
 return ""+getDateStr(new Date(),addday);
 };
 case 'Ytimestamp':{
 return Math.floor(Date.now() / 1000);
 };
 default: {
 return YDate(new Date()) + ' ' + YTime(new Date());
 }
 }
}
//获取月份
function YDate(date) {
 date = date.toLocaleString("zh-cn", { timeZone: "Asia/Shanghai" });
 date = new Date(date);
 var y = date.getFullYear();
 var m = date.getMonth() + 1;
 m = m < 10 ? ('0' + m) : m;
 var d = date.getDate();
 d = d < 10 ? ('0' + d) : d;
 return y + '-' + m + '-' + d;
};
//获取时间
function YTime(date) {
 date = date.toLocaleString("zh-cn", { timeZone: "Asia/Shanghai" });
 date = new Date(date);
 var h = date.getHours();
 h = h < 10 ? ('0' + h) : h;
 var minute = date.getMinutes();
 minute = minute < 10 ? ('0' + minute) : minute;
 var second = date.getSeconds();
 second = second < 10 ? ('0' + second) : second;
 return h + ':' + minute + ':' + second;
};
//次日日期 that.getDateStr(null,1)
function getDateStr(date,addDayCount) { 
 console.log("date==>"+date+"|addDayCount==>"+addDayCount); 
 date.setDate(date.getDate() + addDayCount);//获取AddDayCount天后的日期 
 var y = date.getFullYear();
 var m = date.getMonth() + 1;//获取当前月份的日期 
 var d = date.getDate();
 if (m < 10) {
 m = '0' + m;
 };
 if (d < 10) {
 d = '0' + d;
 };
 return y + "-" + m + "-" + d;
}

最后再说一个秘笈,就是时间段的判断,可以通过当前的时间跟限制时间进行相减,判断得出的值差

代码语言:javascript
复制
 if ((new Date().getHours()-books.replace(':00', '').replace('0', ''))<=0||(new Date().getHours()-booke.replace(':00', '').replace('0', ''))>=0) {}

哈哈暂时这样吧~

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云函数
云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。云函数是实时文件处理和数据处理等场景下理想的计算平台。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档