Я искал время EDT и получил это в таком формате:
Wed Nov 01 2017 06:42:26 GMT+0530 (India Standard Time)
Although, I just want it like 6:42 AM to display !! I tried date time function
but doesnt help !!
Целесообразно ли это делать с любой строковой функцией или она будет давать проблемы в будущем (я не хочу никаких вычислений на этом)
Ты можешь использовать
var date = "Wed Nov 01 2017 06:42:26 GMT+0530";
var formattedDate = new Date(date);
var hours = formattedDate.getHours();
var minutes = formattedDate.getMinutes();
hours = (hours > 12) ? (hours - 12) : hours;
var period = (hours > 12) ? 'PM' : 'AM';
var time = hours + ':' + minutes + ' ' + period;
или вы также можете использовать moment.js, вот подробная информация о функции "format".
var time = moment(date).format("hh:mm A");
var date = new Date();
var hour = date.getHours();
var minutes = date.getMinutes();
var time = hour + ':' + minutes;
Это сработает.
Примечание: momentjs - отличная библиотека для манипулирования временем, не стоит включать такую большую библиотеку для небольших функций, подобных этому.
var format = hour > 12 ? 'PM' : 'AM';
даст формат AM / PM. Но moment.js - действительно хорошее предложение.
hours = hours % 12 || 12