国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js 倒計時(高效率服務器時間同步)

2019-11-19 15:28:30
字體:
來源:轉載
供稿:網友

方案1:每次倒計時去服務端請求時間

//開啟定時器var timer = setInterval(function () {    //執(zhí)行請求,獲取當前服務端時間并進行相應操作}, 1000);

這個方案對于稍微有點經驗的開發(fā)人員來說,都知道是不可取的。因為這會給服務器造成無法想象的壓力,導致應用崩潰。在這個頁面停留一分鐘,那么請求就發(fā)送了60次,假如此時有100個人在訪問這個頁面,那么一分鐘就有6000條請求,人數如果再增長,這絕對會造成不必要的服務器壓力。并且這個方案的倒計時,也會存在很大的誤差,因為請求存在延遲,跟你的網絡狀態(tài)也有很大的關系。

方案2:從服務端返回以服務器時間為基準的倒計時時間戳

//開啟定時器//假設請求獲取到一個時間戳時間差 dateDiffvar timer = setInterval(function () {  //每秒會獲取本地時間,這樣就算執(zhí)行的周期不準確 也可以準確的獲取時間差  var countDown = endTime - (+Date.now())/1000 + dateDiff;  // 倒計時頁面渲染}, 1000);

優(yōu)點:

在頁面生命周期中請求一次
準確度高,就算頁面打開很久還是保持高準確度
缺點:

由于每秒獲取當前時間,假如刻意在倒計時時期內,修改了本地時間將會導致倒計時異常。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 宁陵县| 连平县| 庆阳市| 合川市| 阆中市| 克东县| 壶关县| 资源县| 东城区| 太谷县| 北辰区| 大厂| 澎湖县| 图们市| 漯河市| 武陟县| 政和县| 淮北市| 大石桥市| 巴林左旗| 宝坻区| 汝州市| 蛟河市| 乡城县| 凤阳县| 玉屏| 烟台市| 巴塘县| 布尔津县| 梁山县| 昂仁县| 五河县| 枣阳市| 天等县| 西青区| 昭苏县| 塘沽区| 双流县| 扬中市| 漳平市| 达日县|