我总是以“90”的纯字符串格式存储我的 session 记录 90 分钟。我想将其转换为 schema.org 标准的 ISO 8601 持续时间格式。
例如“90”应转换为 PT1H30M
最佳答案
如果要读取间隔的任何内容对 PT90M 等值不满意,您可以执行以下操作:
function MinutesToDuration(s) {
var days = Math.floor(s / 1440);
s = s - days * 1440;
var hours = Math.floor(s / 60);
s = s - hours * 60;
var dur = "PT";
if (days > 0) {dur += days + "D"};
if (hours > 0) {dur += hours + "H"};
dur += s + "M"
return dur;
}
console.log(MinutesToDuration("0"));
console.log(MinutesToDuration("10"));
console.log(MinutesToDuration("90"));
console.log(MinutesToDuration(1000));
console.log(MinutesToDuration(10000));
输出:
PT0M
PT10M
PT1H30M
PT16H40M
PT6D22H40M
关于javascript - 将分钟(字符串)转换为 ISO 8601 持续时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52422974/