根据不同时间,展示不同时间文案
生活随笔
收集整理的這篇文章主要介紹了
根据不同时间,展示不同时间文案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目的:
根據不同時間,展示不同時間文案
需求:
描述如下:
x < 1分鐘,顯示為 xxx秒前
1分鐘 < x < 1小時,顯示為 xxx分鐘前
1小時 ≤ x < 24小時,顯示為xx小時前
24小時 ≤ x < 1個月,顯示為xxx天前
1個月 ≤ x < 1年,顯示為xxx月前
x ≥ 1年,顯示為年前
效果展示:
//獲取當前時間減去服務端(接口)返回的時間戳startTimeing() {let self = thiswindow.setInterval(() => {let timestamp1 = Date.parse(new Date())let time = timestamp1 - self.start_time * 1000;//start_time是服務端獲得的時間self.doTime(time)}, 1000)},doTime(time) {this.getDateDiff = this.getDateDiff(time)},getDateDiff: function (dateStr) {let that = this;let publishTime = that.getDateTimeStamp(dateStr) / 1000,d_seconds,d_minutes,d_hours,d_days,timeNow = parseInt(new Date().getTime() / 1000),d,date = new Date(publishTime * 1000),Y = date.getFullYear(),M = date.getMonth() + 1,D = date.getDate(),H = date.getHours(),m = date.getMinutes(),s = date.getSeconds();//小于10的在前面補0if (M < 10) {M = '0' + M;}if (D < 10) {D = '0' + D;}if (H < 10) {H = '0' + H;}if (m < 10) {m = '0' + m;}if (s < 10) {s = '0' + s;}d = timeNow - publishTime;d_days = parseInt(d / 86400);d_hours = parseInt(d / 3600);d_minutes = parseInt(d / 60);d_seconds = parseInt(d);if (d_days > 0 && d_days < 365) {return d_days + '天前';} else if (d_days <= 0 && d_hours > 0) {return d_hours + '小時前';} else if (d_hours <= 0 && d_minutes > 0) {return d_minutes + '分鐘前';} else if (d_seconds < 60) {if (d_seconds <= 0) {return '剛剛發表';} else {return d_seconds + '秒前';}} else if (d_days >= 365) {return parseInt(d / 31536000) + '年前';}}, //字符串轉換為時間戳getDateTimeStamp: function (dateStr) {let reg = /^\d+$/;if (reg.test(dateStr)) {return new Date(dateStr);} else {return Date.parse(dateStr.replace(/-/gi, "/"));}},
這里解釋一下,為什么要匹配‘-’,這里是需要兼容IOS的操作。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的根据不同时间,展示不同时间文案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 休闲娱乐广告标语文案29句
- 下一篇: 朱雨辰演过的电视剧