Hướng dẫn format seconds javascript - định dạng giây javascript

String.prototype.toHHMMSS = function () {
    var sec_num = parseInt(this, 10); // don't forget the second param
    var hours   = Math.floor(sec_num / 3600);
    var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
    var seconds = sec_num - (hours * 3600) - (minutes * 60);

    if (hours   < 10) {hours   = "0"+hours;}
    if (minutes < 10) {minutes = "0"+minutes;}
    if (seconds < 10) {seconds = "0"+seconds;}
    return hours+':'+minutes+':'+seconds;
}

Bạn có thể sử dụng nó ngay bây giờ như:

alert("5678".toHHMMSS());

Đoạn trích làm việc:

Đã trả lời ngày 10 tháng 6 năm 2011 lúc 23:27Jun 10, 2011 at 23:27

Hướng dẫn format seconds javascript - định dạng giây javascript

POWTACPOWTACpowtac

39,8K27 Huy hiệu vàng115 Huy hiệu bạc167 Huy hiệu đồng27 gold badges115 silver badges167 bronze badges

18

Bạn có thể quản lý để thực hiện điều này mà không cần bất kỳ thư viện JS bên ngoài nào với phương thức trợ giúp của JS ngày như sau:

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)

Đã trả lời ngày 13 tháng 8 năm 2014 lúc 6:26Aug 13, 2014 at 6:26

Harish Ambadyharish AmbadyHarish Ambady

11.6K4 Huy hiệu vàng28 Huy hiệu bạc54 Huy hiệu đồng4 gold badges28 silver badges54 bronze badges

10

Để có được phần thời gian trong định dạng

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
2, bạn có thể sử dụng biểu thức thông thường này:

(Điều này đã được đề cập ở trên trong cùng một bài viết của ai đó, cảm ơn vì điều đó.)

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)

LWC

Huy hiệu vàng 93011 gold badge8 silver badges26 bronze badges

Đã trả lời ngày 27 tháng 9 năm 2012 lúc 1:22Sep 27, 2012 at 1:22

RajrajRaj

8696 Huy hiệu bạc2 Huy hiệu Đồng6 silver badges2 bronze badges

14

Tôi đề nghị JavaScript thông thường, sử dụng đối tượng ngày. (Để biết giải pháp ngắn hơn, sử dụng

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
3, hãy xem đoạn mã thứ hai.)

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);

.


Chỉnh sửa (giải pháp ngắn):

Sử dụng chức năng

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
3 và chia trên khoảng trắng:

var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
3 cho
var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
6, và tách trên khoảng trắng đầu tiên cho
var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
7.

Đã trả lời ngày 10 tháng 6 năm 2011 lúc 23:32Jun 10, 2011 at 23:32

JelliclecatjelliclecatJellicleCat

27.1K23 Huy hiệu vàng104 Huy hiệu bạc158 Huy hiệu đồng23 gold badges104 silver badges158 bronze badges

9

Đây là tôi đảm nhận nó:

function formatTime(seconds) {
  const h = Math.floor(seconds / 3600);
  const m = Math.floor((seconds % 3600) / 60);
  const s = Math.round(seconds % 60);
  return [
    h,
    m > 9 ? m : (h ? '0' + m : m || '0'),
    s > 9 ? s : '0' + s
  ].filter(Boolean).join(':');
}

Kết quả dự kiến:

const expect = require('expect');
expect(formatTime(0)).toEqual('0:00');
expect(formatTime(1)).toEqual('0:01');
expect(formatTime(599)).toEqual('9:59');
expect(formatTime(600)).toEqual('10:00');
expect(formatTime(3600)).toEqual('1:00:00');
expect(formatTime(360009)).toEqual('100:00:09');
expect(formatTime(0.2)).toEqual('0:00');

Đã trả lời ngày 31 tháng 10 năm 2016 lúc 20:23Oct 31, 2016 at 20:23

Hướng dẫn format seconds javascript - định dạng giây javascript

Tom Estereztom EsterezTom Esterez

21.1k8 Huy hiệu vàng36 Huy hiệu bạc42 Huy hiệu đồng8 gold badges36 silver badges42 bronze badges

11

Một tìm kiếm Google đã bật kết quả này:

________số 8

Đã trả lời ngày 10 tháng 6 năm 2011 lúc 23:25Jun 10, 2011 at 23:25

Ash Burlaczenkoash BurlaczenkoAsh Burlaczenko

23.6K15 Huy hiệu vàng67 Huy hiệu bạc97 Huy hiệu đồng15 gold badges67 silver badges97 bronze badges

1

Biến thể trên một chủ đề. Xử lý một chữ số một chút khác nhau

seconds2time(0)  ->  "0s" 
seconds2time(59) -> "59s" 
seconds2time(60) -> "1:00" 
seconds2time(1000) -> "16:40" 
seconds2time(4000) -> "1:06:40"

function seconds2time (seconds) {
    var hours   = Math.floor(seconds / 3600);
    var minutes = Math.floor((seconds - (hours * 3600)) / 60);
    var seconds = seconds - (hours * 3600) - (minutes * 60);
    var time = "";

    if (hours != 0) {
      time = hours+":";
    }
    if (minutes != 0 || time !== "") {
      minutes = (minutes < 10 && time !== "") ? "0"+minutes : String(minutes);
      time += minutes+":";
    }
    if (time === "") {
      time = seconds+"s";
    }
    else {
      time += (seconds < 10) ? "0"+seconds : String(seconds);
    }
    return time;
}

Đã trả lời ngày 28 tháng 9 năm 2011 lúc 7:37Sep 28, 2011 at 7:37

Jottosjottosjottos

19.9k9 Huy hiệu vàng30 Huy hiệu bạc26 Huy hiệu đồng9 gold badges30 silver badges26 bronze badges

1

alert("5678".toHHMMSS());
0

Đã trả lời ngày 18 tháng 4 năm 2017 lúc 7:58Apr 18, 2017 at 7:58

Hướng dẫn format seconds javascript - định dạng giây javascript

Meiyangmeiyangmeiyang

3913 Huy hiệu bạc4 Huy hiệu đồng3 silver badges4 bronze badges

5

Sử dụng thư viện khoảnh khắc tuyệt vời.js:

alert("5678".toHHMMSS());
1

Điều này cho phép bạn chỉ định bất kỳ thời lượng nào là giờ, phút, giây, nhà máy và trả về một phiên bản có thể đọc được của con người.

SIMLMX

78810 Huy hiệu bạc15 Huy hiệu Đồng10 silver badges15 bronze badges

Đã trả lời ngày 18 tháng 5 năm 2013 lúc 20:41May 18, 2013 at 20:41

PradeeppradeepPradeep

4185 Huy hiệu bạc15 Huy hiệu Đồng5 silver badges15 bronze badges

Tôi thích câu trả lời đầu tiên. Có một số tối ưu hóa:

  • Dữ liệu nguồn là một số. Tính toán bổ sung là không cần thiết.

  • nhiều điện toán dư thừa

Mã kết quả:

alert("5678".toHHMMSS());
2

Đã trả lời ngày 13 tháng 11 năm 2012 lúc 20:36Nov 13, 2012 at 20:36

Serge K.Serge K.Serge K.

3414 Huy hiệu bạc10 Huy hiệu đồng4 silver badges10 bronze badges

5

Nó khá dễ dàng,

alert("5678".toHHMMSS());
3

Đã trả lời ngày 14 tháng 4 năm 2015 lúc 3:34Apr 14, 2015 at 3:34

Hung Vohung VoHung Vo

4114 Huy hiệu bạc7 Huy hiệu đồng4 silver badges7 bronze badges

1

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
8

Kết quả

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
9

Đã trả lời ngày 8 tháng 8 năm 2013 lúc 12:55Aug 8, 2013 at 12:55

Artem Kybaartem KybaArtem Kyba

8551 Huy hiệu vàng11 Huy hiệu bạc29 Huy hiệu đồng1 gold badge11 silver badges29 bronze badges

1

Cách dễ nhất để làm điều đó.

alert("5678".toHHMMSS());
4

Đã trả lời ngày 27 tháng 7 năm 2020 lúc 7:49Jul 27, 2020 at 7:49

Hướng dẫn format seconds javascript - định dạng giây javascript

Arjun Kavaarjun KavaArjun Kava

4.0571 Huy hiệu vàng18 Huy hiệu bạc20 Huy hiệu Đồng1 gold badge18 silver badges20 bronze badges

1

alert("5678".toHHMMSS());
5

result:

alert("5678".toHHMMSS());
6

Hướng dẫn format seconds javascript - định dạng giây javascript

Đã trả lời ngày 10 tháng 10 năm 2013 lúc 15:31Oct 10, 2013 at 15:31

Andy Wuandy WuAndy Wu

811 Huy hiệu bạc2 Huy hiệu đồng1 silver badge2 bronze badges

Tôi thích Webjins trả lời nhiều nhất, vì vậy tôi đã mở rộng nó để hiển thị ngày với hậu tố D, tạo điều kiện hiển thị và bao gồm một hậu tố S trên những giây đơn giản:

alert("5678".toHHMMSS());
7

Trả về "3d 16:32:12" hoặc "16:32:12" hoặc "32:12" hoặc "12s"

Đã trả lời ngày 13 tháng 2 năm 2015 lúc 23:12Feb 13, 2015 at 23:12

Hướng dẫn format seconds javascript - định dạng giây javascript

nïkönïkönïkö

792 Huy hiệu bạc10 Huy hiệu đồng2 silver badges10 bronze badges

4

Tôi yêu câu trả lời của Powtac, nhưng tôi muốn sử dụng nó trong Angular.js, vì vậy tôi đã tạo một bộ lọc bằng mã của anh ấy.

alert("5678".toHHMMSS());
8

Nó giống hệt nhau về mặt chức năng, ngoại trừ việc tôi đã thêm vào một trường số thập phân tùy chọn để hiển thị các giây phân số. Sử dụng nó giống như bạn sẽ có bất kỳ bộ lọc nào khác:

var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
0 hiển thị:
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
1displays:
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
1

var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
2 Hiển thị:
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
3displays:
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
3

Đã trả lời ngày 28 tháng 10 năm 2014 lúc 23:09Oct 28, 2014 at 23:09

MordredmordredMordred

3,3221 Huy hiệu vàng35 Huy hiệu bạc52 Huy hiệu đồng1 gold badge35 silver badges52 bronze badges

1

Dưới đây là một ví dụ về việc sử dụng

var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
4. Tôi đã chọn GB làm ngôn ngữ, vì Hoa Kỳ hiển thị
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
5 thay vì
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
6 trong giờ đầu. Hơn nữa, tôi đã chọn
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
7 làm múi giờ, bởi vì
var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
8 có bí danh trong danh sách các múi giờ cơ sở dữ liệu TZ.

alert("5678".toHHMMSS());
9
var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
0

Đây là ví dụ tương tự, nhưng với

var seconds = 9999; // Some arbitrary value
var date = new Date(seconds * 1000); // multiply by 1000 because Date() requires miliseconds
var timeStr = date.toTimeString().split(' ')[0];
9. Biến thể này cho phép bạn khởi tạo một đối tượng định dạng có thể tái sử dụng, hiệu suất hơn.

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
1
var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
0

Đã trả lời ngày 9 tháng 6 năm 2021 lúc 15:17Jun 9, 2021 at 15:17

Ông Polywhirlmr. PolywhirlMr. Polywhirl

36,9K12 Huy hiệu vàng78 Huy hiệu bạc126 Huy hiệu đồng12 gold badges78 silver badges126 bronze badges

2

Đây là một phiên bản khác, trong đó cũng xử lý ngày:

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
3

Đã trả lời ngày 1 tháng 4 năm 2013 lúc 19:23Apr 1, 2013 at 19:23

M Katzm KatzM Katz

4.8723 Huy hiệu vàng41 Huy hiệu bạc64 Huy hiệu Đồng3 gold badges41 silver badges64 bronze badges

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
4

Ví dụ

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
5

Đã trả lời ngày 10 tháng 4 năm 2014 lúc 11:34Apr 10, 2014 at 11:34

Mashimashimashi

2842 Huy hiệu bạc6 Huy hiệu đồng2 silver badges6 bronze badges

1

Tôi nghĩ rằng hiệu suất khôn ngoan này là nhanh nhất:

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
6

Đã trả lời ngày 3 tháng 12 năm 2013 lúc 13:03Dec 3, 2013 at 13:03

Rutger Van Barenrutger Van BarenRutger van Baren

7.9342 Huy hiệu vàng23 Huy hiệu bạc24 Huy hiệu đồng2 gold badges23 silver badges24 bronze badges

2

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
7

Bạn có thể sử dụng nó ngay bây giờ như:

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
8

Đoạn trích làm việc:

Đã trả lời ngày 19 tháng 2 lúc 12:12Feb 19 at 12:12

Hướng dẫn format seconds javascript - định dạng giây javascript

RyadpasharyadpashaRyadPasha

1631 Huy hiệu bạc9 Huy hiệu đồng1 silver badge9 bronze badges

Đây là cách tôi đã làm điều đó. Nó có vẻ hoạt động khá tốt, và nó cực kỳ nhỏ gọn. (Tuy nhiên, nó sử dụng rất nhiều toán tử ternary)

var date = new Date(0);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substring(11, 19);
console.log(timeString)
9

... và cho các chuỗi định dạng ...

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
0

Đã trả lời ngày 20 tháng 1 năm 2014 lúc 23:33Jan 20, 2014 at 23:33

rookie1024rookie1024rookie1024

6117 Huy hiệu bạc18 Huy hiệu đồng7 silver badges18 bronze badges

0

Bạn có thể sử dụng chức năng sau để chuyển đổi thời gian (tính bằng giây) sang định dạng

function formatTime(seconds) {
  const h = Math.floor(seconds / 3600);
  const m = Math.floor((seconds % 3600) / 60);
  const s = Math.round(seconds % 60);
  return [
    h,
    m > 9 ? m : (h ? '0' + m : m || '0'),
    s > 9 ? s : '0' + s
  ].filter(Boolean).join(':');
}
0:

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
1

Không chuyển một dấu phân, nó sử dụng

function formatTime(seconds) {
  const h = Math.floor(seconds / 3600);
  const m = Math.floor((seconds % 3600) / 60);
  const s = Math.round(seconds % 60);
  return [
    h,
    m > 9 ? m : (h ? '0' + m : m || '0'),
    s > 9 ? s : '0' + s
  ].filter(Boolean).join(':');
}
1 làm dấu phân cách (mặc định):

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
2

Nếu bạn muốn sử dụng

function formatTime(seconds) {
  const h = Math.floor(seconds / 3600);
  const m = Math.floor((seconds % 3600) / 60);
  const s = Math.round(seconds % 60);
  return [
    h,
    m > 9 ? m : (h ? '0' + m : m || '0'),
    s > 9 ? s : '0' + s
  ].filter(Boolean).join(':');
}
2 làm dấu phân cách, chỉ cần chuyển nó dưới dạng tham số thứ hai:

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
3

Thử nghiệm

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
4

Xem thêm Fiddle này.this Fiddle.

Đã trả lời ngày 24 tháng 2 năm 2017 lúc 12:12Feb 24, 2017 at 12:12

Hướng dẫn format seconds javascript - định dạng giây javascript

John Slegersjohn SlegersJohn Slegers

42.9K22 Huy hiệu vàng194 Huy hiệu bạc163 Huy hiệu đồng22 gold badges194 silver badges163 bronze badges

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
5

trong đó tham số địa phương ("en", "de", v.v.) là tùy chọn

Đã trả lời ngày 19 tháng 3 năm 2018 lúc 8:32Mar 19, 2018 at 8:32

JukkapjukkapJukkaP

1.7951 Huy hiệu vàng13 Huy hiệu bạc7 Huy hiệu đồng1 gold badge13 silver badges7 bronze badges

Một biểu thức thông thường có thể được sử dụng để phù hợp với chuỗi con thời gian trong chuỗi được trả về từ phương thức

function formatTime(seconds) {
  const h = Math.floor(seconds / 3600);
  const m = Math.floor((seconds % 3600) / 60);
  const s = Math.round(seconds % 60);
  return [
    h,
    m > 9 ? m : (h ? '0' + m : m || '0'),
    s > 9 ? s : '0' + s
  ].filter(Boolean).join(':');
}
3 của đối tượng ngày, được định dạng như sau: "THU tháng 7 năm 2012 02:45:12 GMT+0100 (Giờ ban ngày GMT)". Lưu ý rằng giải pháp này sử dụng thời gian kể từ thời đại: nửa đêm ngày 1 tháng 1 năm 1970. Giải pháp này có thể là một lớp lót, mặc dù việc chia nó lại giúp nó dễ hiểu hơn nhiều.

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
6

Đã trả lời ngày 5 tháng 7 năm 2012 lúc 2:02Jul 5, 2012 at 2:02

NinjakannonninjakannonNinjakannon

3.6816 huy hiệu vàng52 Huy hiệu bạc72 Huy hiệu đồng6 gold badges52 silver badges72 bronze badges

1

Đây là một giải pháp khá đơn giản, làm tròn đến giây gần nhất!

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
7

Đã trả lời ngày 19 tháng 12 năm 2019 lúc 16:36Dec 19, 2019 at 16:36

Hướng dẫn format seconds javascript - định dạng giây javascript

Sambig lớn SamBig Sam

1.13112 Huy hiệu bạc7 Huy hiệu đồng12 silver badges7 bronze badges

Đây là một trong những tôi đã viết gần đây cho MM: SS. Nó không chính xác cho câu hỏi, nhưng nó là một định dạng một lớp khác.

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
8

EDIT: Điều này đã được thêm vào cho Variety, nhưng giải pháp tốt nhất ở đây là https://stackoverflow.com/a/25279399/639679 bên dưới.

Đã trả lời ngày 21 tháng 4 năm 2020 lúc 19:35Apr 21, 2020 at 19:35

Hướng dẫn format seconds javascript - định dạng giây javascript

Matt Kenefickmatt KenefickMatt Kenefick

1.1661 Huy hiệu vàng13 Huy hiệu bạc22 Huy hiệu đồng1 gold badge13 silver badges22 bronze badges

Câu trả lời chung nhất cho điều này là

    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
    console.log(myDate)
9

Một số ví dụ đầu ra:

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
0

Xem giải thích tại https://stackoverflow.com/a/66504936/1310733

Đã trả lời ngày 6 tháng 3 năm 2021 lúc 11:06Mar 6, 2021 at 11:06

Đây là cách tôi đã làm điều đó

var seconds = 9999;
// multiply by 1000 because Date() requires miliseconds
var date = new Date(seconds * 1000);
var hh = date.getUTCHours();
var mm = date.getUTCMinutes();
var ss = date.getSeconds();
// If you were building a timestamp instead of a duration, you would uncomment the following line to get 12-hour (not 24) time
// if (hh > 12) {hh = hh % 12;}
// These lines ensure you have two-digits
if (hh < 10) {hh = "0"+hh;}
if (mm < 10) {mm = "0"+mm;}
if (ss < 10) {ss = "0"+ss;}
// This formats your string to HH:MM:SS
var t = hh+":"+mm+":"+ss;
document.write(t);
1

TimeFromSecs (22341938) sẽ trở lại '258d 14h 5m 38s'

Đã trả lời ngày 17 tháng 4 năm 2013 lúc 10:28Apr 17, 2013 at 10:28

dt192dt192dt192

8686 Huy hiệu bạc12 Huy hiệu Đồng6 silver badges12 bronze badges