2014-06-06 12 views
7

Phương thức Date.prototype.toLocaleTimeString() trả về một chuỗi có biểu thị nhạy cảm về ngôn ngữ của phần thời gian của ngày này. Nó có sẵn cho các trình duyệt hiện đại.Xóa giây từ toLocaleTimeString

Thật không may, chức năng gốc không thể để ngăn đầu ra giây. Theo mặc định, nó sẽ tạo ra một định dạng thời gian như hh:mm:ss hoặc hh:mm AM/PM, vv

thứ hai: Các đại diện của thứ hai. Giá trị có thể là "numeric", "2-digit".

Nguồn: MDN reference

Điều này có nghĩa rằng bạn không thể sử dụng giống như {second: false}.


Tôi đang tìm kiếm một giải pháp đơn giản ngu ngốc, để tháo giây từ một hh:mm:ss định dạng chuỗi.

var date = new Date(); 
var time = date.toLocaleTimeString(navigator.language, {hour: '2-digit', minute:'2-digit'}); 
console.log(time); // 15:24:07 

này biểu thức thông thường không công việc:

time.replace(/:\d\d(|$)/,''); 
time.replace(/(\d{2}:\d{2})(?::\d{2})?(?:am|pm)?/); 
+0

'time.substr (0,5) '? – Halcyon

+0

@Halcyon Cảm ơn bạn, nhưng điều này không hoạt động http://jsfiddle.net/e73GY/ – mate64

+0

'time = time.substr (0,5);' doofus: P – Halcyon

Trả lời

5

Bạn có thể sử dụng:

var time = date.toLocaleTimeString(navigator.language, {hour: '2-digit', minute:'2-digit'}) 
      .replace(/(:\d{2}| [AP]M)$/, ""); 

btw Google Chrome lợi nhuận

new Date().toLocaleTimeString(navigator.language, {hour: '2-digit', minute:'2-digit'}); 

như "12:40 PM"

+0

Có, 'hh: mm: ss' là định dạng đầu ra mặc định. Tôi đã bật định dạng hiển thị thời gian 24h trên hệ thống của mình. – mate64

+0

ok thêm '.replace (/ (: \ d {2} | [AP] M) $ /," ");' sẽ hoạt động trong cả hai trường hợp. – anubhava

+0

Bạn được chào đón, vui mừng vì nó đã hoạt động. – anubhava

1

Chỉ cần thêm một sự kết hợp có thể để đạt được điều này:

(new Date()).toLocaleTimeString().match(/\d{2}:\d{2}|[AMP]+/g).join(' ') 
+0

Cảm ơn bạn, nhưng điều này loại bỏ hoàn toàn thời gian, khi đầu ra định dạng hệ thống được đặt thành 'hh: mm AM/PM'. – mate64

+0

Nó thực sự hoạt động với định dạng của bạn 'hh: mm: ss' AM hoặc PM là tùy chọn trong biểu thức – Dalorzo

Các vấn đề liên quan