1
我有一個對象數組,其中每個對象都有一個日期屬性。如何篩選獨立於時區的日期?
當嘗試使用過濾擴散片式基於日期此數組這樣
[Date]=Date(2017,8,2)
此公式僅工作在時區1:00。它不適用於任何其他時區。我怎樣才能讓這個公式適用於任何時區?
我正在使用來自Grapecity的傳播視圖庫。
我有一個對象數組,其中每個對象都有一個日期屬性。如何篩選獨立於時區的日期?
當嘗試使用過濾擴散片式基於日期此數組這樣
[Date]=Date(2017,8,2)
此公式僅工作在時區1:00。它不適用於任何其他時區。我怎樣才能讓這個公式適用於任何時區?
我正在使用來自Grapecity的傳播視圖庫。
我找不到在SpreadView的查詢中設置時區的任何方法。在對類似查詢here的回答中,他們提到他們在他們的控件中也不支持時區。但是,您可以應用中間解決方案。當您傳遞類似Date(yyyy,mm,dd)
之類的日期對象時,它們似乎正在考慮當前瀏覽器的時區。因此,如果您可以將日期轉換爲您在瀏覽器時區中收到的數據(或者您擁有的對象數組),那麼理論上可以解決您的問題。您可以將Date
字段轉換使用moment.js對象的數組中的AS-
cons convertDateTimeToBrowserTime = (dateTimeWithTimeZone)
=> moment(dateTimeWithTimeZone, 'YYYY-MM-DDTHH:mm:ssZ').local().format('YYYY-MM-DD')
// with recent version of moment, you can use a slightly shorter syntax like:
// => moment(dateTimeWithTimeZone, moment.ISO_8601).local().format(YYYY-MM-DD)
這根據瀏覽器的時區集合中會將您的日期值到適當的日期。預處理完成後,您的查詢應按預期工作。
我不熟悉從Grapecity傳播視圖庫,但我想這是因爲它通過字符串表示過濾日期。嘗試在前10個字符上使用過濾,或將所有日期的規範化爲UTC日期。 –