2011-05-25 136 views
5

我得到的時間像13.40,但我需要將其轉換爲1.40 ..任何人都知道,什麼是最好的方式來做到這一點。我正在使用jquery來騰出時間。時間轉換從24小時到12小時

我的代碼是:

var time = new Date(myDate); 
var hours = time.getHours(); 

alert(hours); 
+4

這不是jQuery的,它只是JavaScript的。 – 2011-05-25 11:54:31

+0

@Cory:同意,重新標記。 – DarthJDG 2011-05-25 12:31:21

回答

2

嘗試

hours = hours > 12 ? hours - 12 : hours; 
+4

實際上,'hours = hours%12'有點簡單;) – 2011-05-25 12:21:15

6
if (hours > 12) { 
    hours -= 12; 
} 

嗯,就這麼簡單。

1

可以使用模運算符此:

var hours = time.getHours() % 12 
+0

=)))))))))))))「modulator」?! – 2011-05-26 08:53:50

+0

它是模數。謝謝! 順便說一句,這個解決方案並不是真的有效,因爲12:00應該是12米,24應該是12點。 – 2011-05-26 09:17:09

3

使用modulus操作,%這個

var input = "13.40"; 
var atoms = input.split("."); 
var output = atoms[0] % 12 + "." + atoms[1]; 
output; // "1.40"; 

如果你想與0前綴那麼你可以做到這一點

var output = ("0" + atoms[0] % 12).slice(-2) + "." + atoms[1]; 
output; // "01.40"; 

如果你想AM/PM作爲後綴

var output = ("0" + atoms[0] % 12).slice(-2) + "." + atoms[1] + 
    (atoms[0] < 13 ? " AM" : " PM"); 
output; // "01.40 PM"; 
相關問題