2016-02-12 113 views
0

我有兩個日期都已經轉換成秒數倒數使用。 它們之間的差異是var距離。 我怎樣才能獲得百分比的差異。現在的日期和結束日期之間的百分比

var now = new Date(); 
var distance = end - now; 

兩者都用於倒計時。 所有我想要的是獲得var distance的百分比的正確公式,所以我可以將其添加到進度條。

+0

你也許可以先告訴我們這是什麼語言? –

+0

對不起只是javascript –

+1

它需要一些更多的信息和格式。很好的問題btw。你需要的變量是'nowTime',它會增加,'endTime'將會是常量,'startTime'將會是或者初始點的開始。 – instinct

回答

0

,你可以看看它是startDistance * x,其中01路是十進制形式的比例,等於currentDistance

startDist * x = currentDist 
-> x = currentDist/startDist 

所以,你可以這樣做:

(currentDistance/startDistance) * 100 
+0

這是最簡單和最好的答案適合我恰好在我的倒計時工作就好了。謝謝Adjit –

+0

@HMDadou很高興它解決了。如果你可以點擊答案旁邊的複選標記,將不勝感激:) – Adjit

0

下面是開始時間百分比差異根據UTC時間戳(1970年1月1日):

var now = new Date(); 
var end = new Date(new Date - 100000000); // or new Date(new Date + 100000000); 
var difference = Math.abs(now - end)/(Math.max(now, end)/100); 

但需要注意的情況下,如果你有其他的基本時間你nowend值應按照該時間進行更新,所以在代碼片段應用公式之前,你要不斷更新nowend值:

now = Math.abs(now - timeSinceYouCalculatingDiff); 
end = Math.abs(end - timeSinceYouCalculatingDiff); 
// Note timeSinceYouCalculatingDiff should be less than now and end dates 
+0

你打算用100乘以嗎? – instinct

+0

@instinct是的,你可以看到'(Math.max(now,end)/ 100)包含的乘法 –

0

需要3個變量start, now, end

var totaldays = end - now; 
var runningDays = now - start; 
var percentage = parseInt((runningDays/todalDays)*100); 

演示https://jsfiddle.net/vebhq76a/

+0

小提琴不起作用。如果我從200開始,nowTime是300,400是我的結束時間? – instinct

+0

如果您想使用該值,請使用「millisecondsPerDay = 1;」 – uingtea

相關問題