Javascript让UTC过时和变时

时间:2017-08-25 01:44:15

标签: javascript jquery

我在javascript中有两个变量,如:

时间:02:00 日期:25-08-2017

我想知道我是否可以将它们放入Date()对象并使用getUTCDay(),getUTCHours()和getUTCMinutes()以小时/分钟的形式获取UTC日期和时间并将它们放置回到我得到它们的格式。

我可以为它加载moment.js,但是如果我不这样做,那么如果我可以不用它就会很好。

1 个答案:

答案 0 :(得分:0)

将字符串转换为ISO 8601字符串,并在Date构造函数中使用它。从那里,您可以获得所需的任何数据

let time = '02:00'
let date = '25-08-2017'

let iso8601Date = date.split('-').reverse().join('-')

let dt = new Date(`${iso8601Date}T${time}`) // will be interpreted as local time

const digitFormatter = new Intl.NumberFormat(undefined, {minimumIntegerDigits: 2})

console.info('Parsed date:', dt)
console.info('UTC date in dd-mm-yyyy:',
  `${digitFormatter.format(dt.getUTCDate())}-${(digitFormatter.format(dt.getUTCMonth() + 1))}-${dt.getUTCFullYear()}`
)
console.info('UTC time:', `${digitFormatter.format(dt.getUTCHours())}:${digitFormatter.format(dt.getUTCMinutes())}`)