我正在使用Ionic Timepicker。当我选择一个时间时,它会传递诸如 75600
之类的值(此处我选择了 09:00pm)。如何实际检索人类可读的字符串而不是“纪元时间”值?
这是我的代码:
$scope.timePickerObject12Hour.inputEpochTime = val;
console.log(val);
// here i am getting 79200
var selectedTime = new Date();
var amPmHour = $filter('date')(selectedTime, 'hh');
console.log(amPmHour);
// here i am getting 07
console.log('Selected epoch is : ', val, 'and the time is ', selectedTime.getUTCHours(), ':', selectedTime.getUTCMinutes(), 'in UTC');
//here i am getting Selected epoch is : 75600 and the time is 16 : 5 in UTC
最佳答案
只需使用纯 Javascript Date
对象即可:
new Date($scope.timePickerObject12Hour.inputEpochTime*1000);
不要忘记乘从Ionic Timepicker获得的“纪元时间”值乘以1000,因为Javascript日期构造函数需要毫秒数,而不是秒。
根据您的情况,以下代码:
console.log($filter('date')(new Date(79200*1000), 'hh:mma'));
...将输出:
09:00PM
<小时/>
这是一个工作 JSFiddle (link)其中将包含一个使用您正在使用的工具的工作示例。
关于javascript - 如何使用 angularjs 将值转换为时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33983945/