我有一個代表時間的數字,我需要將此數字轉換爲字符串。在javascript中將數字轉換爲字符串
如N = 800,則表示時間= 8:00
目前,我這樣做:
n = 800;
string time = '' + n/100 + ' : ' + n % 100 ;
但time
成爲8 : 0
但我要像8 : 00
任何人都在兩位數格式分鐘請幫我嗎?
我有一個代表時間的數字,我需要將此數字轉換爲字符串。在javascript中將數字轉換爲字符串
如N = 800,則表示時間= 8:00
目前,我這樣做:
n = 800;
string time = '' + n/100 + ' : ' + n % 100 ;
但time
成爲8 : 0
但我要像8 : 00
任何人都在兩位數格式分鐘請幫我嗎?
var n = 800;
var hours = Math.floor(n/100);
var minutes = ('0' + (n%100)).slice(-2);
var time = hours + ':' + minutes;
請注意幾小時的舍入,否則最終可能會出現類似「8.56:56」的情況。
如果你正試圖在這裏做的是插入的最後兩位數字前一個冒號,你可以做一個字符串替換:
var time = ("" + n).replace(/(\d\d)$/,":$1");
或切片出來的小時和分鐘,並用冒號串聯:
var time = "" + n;
time = time.slice(0,-2) + ":" + time.slice(-2);
感謝您的解決方案太有用 – EmptyData
只是一個快捷的解決方案:P
var a = 800;
var b = a.toString();
var first = b.replace(b.substring(b.length - 2),":"+b.substring(b.length - 2));
那麼早上8點15分會表示爲「815」? – nnnnnn