2012-05-31 81 views
1

我需要區分東京和首爾時區,都具有相同的偏移量而不是DST偏移量。區分東京和首爾時區

我使用javascript來計算偏移量。也看着解析字符串來獲取時區的名稱,它似乎不是一個好主意。

請讓我知道這兩者如何區分。

+0

區分他們在什麼情況下? –

+1

「解析字符串以獲取名稱」,什麼字符串? – devsnd

+0

爲什麼你實際上必須區分兩個時區? – Stefan

回答

1

new Date()似乎包括時區名稱。

東京返回:

Thu May 31 2012 21:09:04 GMT+0900 (JST) 

首爾返回:

Thu May 31 2012 21:09:04 GMT+0900 (KST) 

然而,這依賴於瀏覽器/ OS上。

否則,您可以嘗試確定用戶的地理位置(基於IP地址)或向用戶提供他或她的時區中的地區/地區列表以供選擇。

1

如果偏移量和DST是你有只有信息,他們是在兩種情況下相同,你顯然不能區分它們。

因此,您將需要另一條信息。時區的名稱,您似乎可以從時間字符串中提取,聽起來是一個很好的標識符。您應該使用zone.tab file的正式名稱。

您不應該依賴Date的toString()toTimeString(),它們是specified取決於實現。

+0

請在以下說明: - 不同的瀏覽器會以不同的方式返回字符串嗎?如果是,我們如何解析它? - 客戶端本地時間由javascript提取。假設我的操作系統不是英語,說德語等,將返回相同的字符串? –

+0

哪個字符串?您沒有向我們展示瀏覽器返回字符串的任何代碼。 – Bergi

+0

JavaScript中的Date()函數返回時區名稱,例如\t太陽05月06 2012 00:00:00 GMT + 0900(東京標準時間)。但我認爲這是瀏覽器以及操作系統依賴不確定。 –