2017-04-27 105 views
0

這裏是什麼,我有一個樣本:填充缺少的日期

[{ 
    "probeTemp": "35.40", 
    "dateProbe": "2015-08-1" 
}, { 
    "probeTemp": "34.89", 
    "dateProbe": "2015-08-3" 
}, { 
    "probeTemp": "34.42", 
    "dateProbe": "2015-08-5" 
}] 

我如何填寫最小和最大日期之間缺少的日期在JSON字符串,所以缺少場結束像這樣?

[{ 
     "probeTemp": "35.40", 
     "dateProbe": "2015-08-1" 
    }, { 
     "probeTemp": null, 
     "dateProbe": "2015-08-2" 
    }, { 
     "probeTemp": "34.89", 
     "dateProbe": "2015-08-3" 
    }, { 
     "probeTemp": null, 
     "dateProbe": "2015-08-4" 
    }, { 
     "probeTemp": "34.42", 
     "dateProbe": "2015-08-5" 
    }] 

我發現this thread,但我不知道我是如何把它們運用到我的數據。任何幫助?

編輯2:This is what I tried so far,但我越來越Uncaught TypeError: Cannot read property 'length' of undefined在7行和第23

+0

缺失日期是什麼意思?最小和最大之間? – Weedoze

+0

@Weedoze是的,抱歉沒有具體。我將編輯我的問題。 – Newwt

+0

你嘗試過什麼嗎?獲取最小值和最大值然後在它們之間迭代每天 – Weedoze

回答

0

嘿,我會做somethink這樣。

  1. 讀取第一日期和解析IST Date.parse()
  2. 步行到下一個日期,檢查第一次約會+ 1(新日期()GETDATE()+ 1)是相同的日期,如果是這樣的話,如果不創建這個日期並插入它。
  3. 等等
+0

你介意給我一個如何做代碼的例子嗎? – Newwt

0

使用API​​ here它足夠聰明,實例化一個日期 - 當一個迭代同時提前一天 - 帳戶的短短几個月內,加入1閏年等高級不管getDate()返回的是什麼(在Date實例上),然後用該後面的值調用setDate方法。或者使用getTime和setTime方法在一天中添加毫秒數。

覈對您原有探頭溫度

你可以有最大日期埋伏比較的另一個實例的地圖中的每個日期。在進行比較時,在兩個實例上使用getTime方法,即:

if (iterDate.getTime() !== maxDate.getTime()) { 
    if (!previousProbeTemp) 
     newProbeTemp = null; 
+0

我不太明白這是如何工作的。在哪裏/如何獲得'iterDate'和'maxDate'?這是如何在json數組中插入缺失的日期?對不起,正如我所說的,我的javascript/jquery知識並不是那麼廣泛。 – Newwt