2016-12-29 56 views
-1

在javascript中,這個excel公式相當於什麼?Excel公式到javascript

=MAX(MIN(EndDate1,EndDate2)-MAX(StartDate1,StartDate2)+1,0) 

這是甚至接近?

Math.Max(Math.Min(EndDate2,EndDate1)-Math.Max(StartDate2,StartDate1)+1,0) 

我已經試過..

var StartDate1 = new Date(2016,12,30); 
var EndDate1 = new Date(2017,10,30); 
var QueryStartDate = new Date (2017, 01,30) 
var QueryEndDate = new Date (2017, 03,30) 

Math.Max(Math.Min(ProjectEndDate,QueryEndDate)-Math.Max(ProjectStartDate,QueryStartDate)+1,0) 
+0

那麼,第二個不會編譯,因爲你的'StartDateN'和'EndDateN'變量是未定義的。你能包含更多的代碼嗎? – CollinD

+2

用相同的輸入測試它,看它是否產生相同的輸出。你不需要我們。 –

回答

0
var x = Math.max(Math.min(EndDate2,EndDate1) - Math.max(StartDate2,StartDate1)+1, 0) 

這是假設結束日期*和StartDateN是Date對象。

+0

你可以在Date對象上做Math.max/min嗎? – Athapali

+0

日期對象是Integer值,表示自1970年1月1日00:00:00 UTC以來的毫秒數。所以是的 –