使用Angular和Javascript过滤器转换特定军事时间
我知道我很多时候都喜欢使用Angular和Javascript过滤器转换特定军事时间,javascript,angularjs,date,Javascript,Angularjs,Date,我知道我很多时候都喜欢 01:45 //and 15:00 我猜那个日期在军事上是HH:MM 虽然我见过一些高级函数然后解析句子,甚至有些函数使用秒,比如HH:MM:SS,但我想要一种简单而准确的方法来获取HH:MM 所以我假设15:00就是3:00 下面的此函数将不起作用,因为我已经有了“:” 那么下面假设HHMM对吗?当我相信我需要解析HH:MM时 var getTravelTimeFormatted = function (str) { var hours = Math.trun
01:45
//and
15:00
我猜那个日期在军事上是HH:MM
虽然我见过一些高级函数然后解析句子,甚至有些函数使用秒,比如HH:MM:SS,但我想要一种简单而准确的方法来获取HH:MM
所以我假设15:00就是3:00
下面的此函数将不起作用,因为我已经有了“:”
那么下面假设HHMM对吗?当我相信我需要解析HH:MM时
var getTravelTimeFormatted = function (str) {
var hours = Math.trunc(str / 60),
minutes = str % 60;
return hours + ':' + minutes;
};
更新
好吧,我假设15:00就是3:00,对吗
因此,我去掉了传入的“:”并将其添加回去
问题是结果是25.0
,这意味着什么
var getTravelTimeFormatted = function (str) {
str = str.replace(/:/g,'');
var hours = Math.trunc(str / 60),
minutes = str % 60;
return hours + ':' + minutes;
};
console.log(getTravelTimeFormatted('15:00'));
给定一个字符串HH:MM,你可以拆分然后减去12小时。这里有一个简单的解决方案,它不会检查无效的输入
function TwelveHourFormat(time) {
var dtParts = time.split(":");
var hours = dtParts[0];
var minutes = dtParts[1];
var suffix = "AM";
if (hours > 12) {
hours = hours - 12;
suffix = "PM";
}
else if (hours == "00") {
hours = 12;
suffix = "AM";
}
else if (hours == "12") {
suffix = "PM";
}
return (hours + ":" + minutes + " " + suffix);
}
给定一个字符串HH:MM,你可以拆分然后减去12小时。这里有一个简单的解决方案,它不会检查无效的输入
function TwelveHourFormat(time) {
var dtParts = time.split(":");
var hours = dtParts[0];
var minutes = dtParts[1];
var suffix = "AM";
if (hours > 12) {
hours = hours - 12;
suffix = "PM";
}
else if (hours == "00") {
hours = 12;
suffix = "AM";
}
else if (hours == "12") {
suffix = "PM";
}
return (hours + ":" + minutes + " " + suffix);
}
这是一个复制品。Jasen的回答很好,比复制的更简洁,但函数可以更简洁:
/*将24小时小时小时:毫米格式的时间转换为12小时小时:毫米ap格式
**@param{string}time-以hh:mm格式(例如14:30)
**@以12小时格式返回{string}时间(例如下午2:30)
*/
函数到12小时(时间){
var b=时间分割(/\D/);
返回(b[0]%12 | | 12)+':'+b[1]+
(b[0]这是的副本。Jasen的答案很好,比副本更简洁,但函数可以更简洁:
/*将24小时小时小时:毫米格式的时间转换为12小时小时:毫米ap格式
**@param{string}time-以hh:mm格式(例如14:30)
**@以12小时格式返回{string}时间(例如下午2:30)
*/
函数到12小时(时间){
var b=时间分割(/\D/);
返回(b[0]%12 | | 12)+':'+b[1]+
(b[0]或24小时制。哦,有趣。::我发布的功能,即使我使用它并通过1500,我最终得到25:0,但不是我想要的。你想把24小时制转换成12小时制吗?我想这就是我需要做的。所以你有一个字符串“15:00”你想转换成12小时格式的时间?还是24小时格式的时间?哦,有趣的是:/我发布的那个函数,即使我使用它并通过1500次,我最终还是得到了25:0,这不是我想要的。你想把24小时格式转换成12小时格式吗?我想这就是我需要做的。所以你有一个字符串“15:00”你想转换成12小时格式的时间吗?我在玩一个我发现是在传递一个日期…以月-日-年-时间和试图摆脱m/d/y是一种痛苦,你的作品很棒thx!我在玩一个我发现是在传递一个日期…以月-日-年-时间和试图摆脱m/d/y是一种痛苦痛苦,你的作品伟大的thx!