Làm cách nào để bắt đầu (00:00:00) và kết thúc (23:59:59) ngày hôm nay trong dấu thời gian (GMT)? Máy tính sử dụng giờ địa phương.Làm cách nào để bắt đầu và kết thúc trong ngày bằng Javascript?
Trả lời
var start = new Date();
start.setHours(0,0,0,0);
var end = new Date();
end.setHours(23,59,59,999);
alert(start.toUTCString() + ':' + end.toUTCString());
Nếu bạn cần phải nhận được thời gian tính theo giờ UTC từ đó, bạn có thể sử dụng UTC()
.
Tôi khuyên bạn nên 'var end = new Date (start.getTime());' để đảm bảo rằng bạn có cùng một điểm trong thời gian - trong trường hợp bạn thay đổi ngày giữa bắt đầu và kết thúc initialisation - nó có thể xảy ra - chỉ là một thói quen tốt để nhận được vào –
@MartynDavis khi tất cả hoạt động bình thường, thường khoảng 0-2 ve xảy ra ở giữa nhưng nó phụ thuộc vào cách bận rộn CPU là như vậy thì nó có ý nghĩa để làm điều đó nếu bạn đang lo lắng về 1 đánh dấu chính xác. –
Tôi cũng khuyên bạn nên sử dụng 'setUTCHours' thay vì' setHours' để nhận thời gian Universal – sidonaldson
function getTime(zone, success) {
var url = 'http://json-time.appspot.com/time.json?tz=' + zone,
ud = 'json' + (+new Date());
window[ud]= function(o){
success && success(new Date(o.datetime));
};
document.getElementsByTagName('head')[0].appendChild((function(){
var s = document.createElement('script');
s.type = 'text/javascript';
s.src = url + '&callback=' + ud;
return s;
})());
}
getTime('GMT', function(time){
// This is where you do whatever you want with the time:
alert(time);
});
tham khảo: Getting the current GMT world time
Sử dụng thư viện momentjs, điều này có thể đạt được với các startOf()
và endOf()
phương pháp trên đối tượng ngày hiện tại của khoảnh khắc, đi qua các chuỗi 'day'
như các đối số:
Local giờ:
var start = moment().startOf('day'); // set to 12:00 am today
var end = moment().endOf('day'); // set to 23:59 pm today
var start = moment.utc().startOf('day');
var end = moment.utc().endOf('day');
momentjs là điểm duy nhất cho tất cả mọi thứ liên quan đến xử lý thời gian JavaScript. Luôn luôn đáng để nhập. –
Và chúng ta nên sử dụng '.toDate()' để có được ngày tháng. 'var end = moment(). EndOf ('day'). ToDate();' – YaTaras
thêm '.unix()' vào cuối để lấy dấu thời gian unix trong giây :) như sau: 'moment(). StartOf ('ngày'). unix() ' –
Sử dụng thư viện luxon.js, cùng có thể đạt được bằng startOf và endOf phương pháp bằng cách thông qua các 'ngày' như tham số
var DateTime = luxon.DateTime;
DateTime.local().startOf('day').toUTC().toISO(); //2017-11-16T18:30:00.000Z
DateTime.local().endOf('day').toUTC().toISO(); //2017-11-17T18:29:59.999Z
DateTime.fromISO(new Date().toISOString()).startOf('day').toUTC().toISO(); //2017-11-16T18:30:00.000Z
loại bỏ .toUTC() nếu bạn chỉ cần thời gian địa phương
và bạn có thể hỏi tại sao không phải moment.js, câu trả lời là here cho điều đó.
Bạn có nghĩa là http://moment.github.io/luxon/docs/manual/why.html? –
@ ed-norris tx đã cập nhật liên kết – tk120404
Tôi thích sử dụng thư viện date-fns để điều chỉnh ngày. Nó thực sự là công cụ mô-đun và nhất quán tuyệt vời. Bạn có thể nhận được bắt đầu và kết thúc của ngày theo cách này:
var startOfDay = dateFns.startOfDay;
var endOfDay = dateFns.endOfDay;
console.log('start of day ==> ', startOfDay(new Date('2015-11-11')));
console.log('end of day ==> ', endOfDay(new Date('2015-11-11')));
<script src="https://cdnjs.cloudflare.com/ajax/libs/date-fns/1.29.0/date_fns.min.js"></script>
Nếu bạn chỉ quan tâm đến timestamps bạn cũng có thể làm được điều này, có thể được điều chỉnh thuận tiện cho những khoảng thời gian khác nhau (giờ: 1000 * 60 * 60
, 12 giờ: 1000 * 60 * 60 * 12
, v.v.)
const interval = 1000 * 60 * 60 * 24; // 24 hours in milliseconds
let startOfDay = Math.floor(Date.now()/interval) * interval;
let endOfDay = startOfDay + interval - 1; // 23:59:59:9999
- 1. hồ sơ tìm kiếm giữa ngày bắt đầu và ngày kết thúc để ransack
- 2. Làm cách nào để bạn phát hiện khi hoạt ảnh CSS bắt đầu và kết thúc bằng JavaScript?
- 3. nhận ngày bắt đầu và ngày kết thúc tuần từ số tuần và năm trong android
- 4. Làm cách nào để có thể bắt đầu và kết thúc trên toàn bộ lịch biểu?
- 5. Làm cách nào để viết regex cho các kết quả khớp chuỗi bắt đầu bằng @ hoặc kết thúc bằng?
- 6. Lặp lại mỗi ngày giữa Ngày bắt đầu và Ngày kết thúc
- 7. Làm cách nào để tôi có thể bắt đầu và kết thúc trong regex của Python?
- 8. Tính ngày bắt đầu và ngày kết thúc của tuần trước
- 9. Cách nhận thời gian bắt đầu và kết thúc trong một ngày
- 10. SQL giữa ngày kể cả bắt đầu và ngày kết thúc
- 11. Với dấu thời gian Unix, cách bắt đầu và kết thúc ngày hôm đó?
- 12. PHP có ngày bắt đầu và ngày kết thúc của tuần theo số tuần
- 13. Đường ray - Nhận ngày bắt đầu và ngày kết thúc của tuần hiện tại
- 14. Kết hợp Regex bắt đầu và kết thúc chuỗi
- 15. Nhận ngày bắt đầu và kết thúc trong tuần? Trong máy chủ Sql?
- 16. Bắt đầu và kết thúc tệp trong python với regex
- 17. Rails cookie, thiết lập ngày bắt đầu và kết thúc ngày
- 18. Trong cơ sở dữ liệu, tốt hơn là lưu trữ một khoảng thời gian làm ngày bắt đầu/kết thúc, hoặc ngày bắt đầu và thời lượng?
- 19. Lặp lại theo ngày, bắt đầu từ ngày x đến ngày kết thúc
- 20. Giao diện người dùng jQuery Chọn ngày bắt đầu và ngày kết thúc trong phạm vi dựa trên ngày bắt đầu
- 21. Tìm những khoảng trống trong thời gian không nằm trong hồ sơ với ngày bắt đầu và ngày kết thúc
- 22. Tự động tìm bắt đầu và kết thúc tuần làm việc trong Bảng tính Google
- 23. mysql: Làm cách nào để xóa ký tự khi bắt đầu hoặc kết thúc trường
- 24. UITableView bắt đầu/kết thúc cập nhật
- 25. Làm cách nào để chuyển đến phần bắt đầu/kết thúc của lựa chọn trực quan?
- 26. dòng egrep bắt đầu bằng r và kết thúc bằng g
- 27. đệ quy CTE - củng cố bắt đầu và ngày kết thúc
- 28. Không gian thư viện lúc bắt đầu và kết thúc
- 29. Biểu thức cron trong unix/linux cho phép chỉ định ngày bắt đầu và ngày kết thúc chính xác
- 30. làm thế nào để thêm một tập hợp các giá trị mà nằm giữa hai bắt đầu ngày và ngày kết thúc trong Qlikview
Bạn có muốn có thời gian bình minh và hoàng hôn không? Hãy cụ thể hơn một chút. – rcdmk