题目要求:
知识点:
使用WXS脚本。
代码实现:
JavaScript 只传入时间戳,不做任何逻辑处理:
Page({
data: {
timestamp: new Date().getTime()
}
});
在 WXS 里同样不能使用new Date
来创建日期对象,但提供了替代的方法,就是全局函数getDate
,这个函数实现了跟new Date
同样的功能,使用方法也一致,我们可以通过它来获取到日期对象,然后再调用日期对象所提供的函数对日期进行处理。
var myDate = getDate();
// 日期格式化
function formatDate(nowDate){
var year = nowDate.getFullYear() + '年';
var month = (nowDate.getMonth() + 1 )+ '月';
var date = nowDate.getDate() + '日';
var week = ["星期日", "星期六", "星期五", "星期四", "星期三", "星期二", "星期一",];
var day = week[nowDate.getDay()];
// 得到当前日期格式
return year +month +date + '' + day + '\n';
}
// 获取当前日期整周
function getWeek(nowDate){
num = nowDate.getDay() - 1; // 获取当前日期在本周第几天
console.log(num);
var weeklist = '';
for(i=0;i<7;i++){
var diff = (num - i) * 24 * 60 * 60 * 1000; // 与当前日期相差几天
console.log(diff);
var dDay = getDate(nowDate.getTime() - diff); // 差值日期
console.log('dDay:' + dDay);
weeklist = weeklist + formatDate(dDay) + '\n';
}
return weeklist;
}
module.exports = {
myDate:formatDate(myDate),
weeklist:getWeek(myDate)
}
wxml模板
<wxs src='index.wxs' module='m1' />
<view>
<view><text>当前日期:\n{{m1.myDate}}</text></view>
<view><text>本周日期:\n{{m1.weeklist}}</text></view>
</view>