小程序秒杀倒计时

//倒计时

countDown: function (data,date) { // data为列表数据  此数据内含结束时间endTime    date为服务器时间

console.log(data)

var that = this;

let newDate = (date).replace(/-/g, ‘/’);// 获取服务器时间 转换成都支持的格式

var systimestamp = new Date(newDate).getTime();//转换成时间戳

var time = setInterval(function () { // 循环执行

systimestamp = (systimestamp/1000+1)*1000;//服务器时间戳执行+1秒

console.log(‘服务器时间倒计时’ + systimestamp)

var spikeFruitList = addHHMMSSToListData2(data, systimestamp);

console.log(‘倒计时集合’+spikeFruitList)

that.setData({

spikeFruitList: spikeFruitList

}, 1000);

 

const addHHMMSSToListData2 = (data, systimestamp) => {

var result = data;

var goingList = new Array();

for (let i = 0; i < result.length; i++) {

var expiryTime = result[i].endTime;

console.log(‘结束时间+’ + result[i].endTime);

var futureTime = new Date(expiryTime).getTime();

result[i] = addHHMMSSToList2(result[i], systimestamp, futureTime);

if (result[i].h_h == ’00’ && result[i].m_m == ’00’ && result[i].s_s == ’00’) {

//此处如果时间到了 不在加入集合中 列表也就不再显示倒计时数据

} else {

goingList.push(result[i]);

}

}

return goingList;

}

 

 

const addHHMMSSToList2 = (result, nowtimestamp, comparetimestamp) => {

var nowTime = nowtimestamp;// 当前时间的时间戳

var futureTime = comparetimestamp;// 比较时间的时间戳

// 未来的时间减去现在的时间 ;

var resTime = (futureTime – nowTime) / 1000;

// 结束时间

var zero = futureTime – nowTime;

if (zero >= 0) { // 认为还没有到达结束的时间

result.h_h = addHH(resTime);

result.m_m = addMM(resTime);

result.s_s = addSS(resTime);

} else {

result.h_h = ’00’;

result.m_m = ’00’;

result.s_s = ’00’;

}

return result;

}

// 时间转换

function timestampToTime(s) {

var h = Math.floor(s / 3600 % 24);

var min = Math.floor(s / 60) % 60;

var sec = s % 60;

h = add(h);

min = add(min);

sec = add(sec);

return h + ‘:’ + min + ‘:’ + sec

}

// 添 0

function add(m) {

return m < 10 ? ‘0’ + m : m

}

//时

function addHH(s) {

var h = Math.floor(s / 3600 % 24);

return add(h);

}

//分

function addMM(s) {

var min = Math.floor(s / 60) % 60;

return add(min);

}

//秒

function addSS(s) {

var sec = s % 60;

return add(sec);

}

 

 

 

 

 

页面集合取值

{{item.h_h}}:{{item.m_m}}:{{item.s_s}}

 

效果图:

小程序秒杀倒计时

原文链接:https://www.cnblogs.com/it66/p/11159326.html

原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/32920

(0)
优速盾-小U的头像优速盾-小U
上一篇 2025年11月11日 15:58
下一篇 2025年11月12日 21:43

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

优速盾注册领取大礼包www.cdnb.net
/sitemap.xml