在 JS 中将文本转换为整数
Convert Text to Integer in JS
我正在尝试使用 Tampermonkey 查找 UTC 时间偏移量并将其作为时间 return。该网站显示了我在此处拉出的偏移量
waitForKeyElements (".UTCText", getTZ_Offset);
其中 return 是一个字符串
console.log ("Found timezone offset: ", tzOffset);
一般这样08:00
也可以+ or -
然后我想把它转换成实际时间。例如,如果 UTC 时间是 00:00
,如果偏移量是 +08:00,我想打印一个字符串 "The users time is 08:00"。
我想我可以使用 momentjs 获取 UTC 时间 moment().utcOffset(tzOffset)
并传递偏移量。
当我这样做时,它只是 returns NaN
我做错了什么?
将:
之前的部分乘以60,加到第二部分:
const tzOffset = '08:00';
const [hourOffset, minuteOffset] = tzOffset.split(':').map(Number);
const totalMinuteOffset = hourOffset * 60 + minuteOffset;
console.log(totalMinuteOffset);
如果输入可能是负数,那么也要检查一下:
const tzOffset = '-08:00';
const [_, neg, hourOffset, minuteOffset] = tzOffset.match(/(-)?(\d{2}):(\d{2})/);
const totalMinuteOffset = (neg ? -1 : 1) * (hourOffset * 60 + Number(minuteOffset));
console.log(totalMinuteOffset);
A few time zones 与 UTC 的区别不仅在于小时,还在于分钟(例如,UTC +5:30,UTC +9:30),因此只是 parseInt
,即使它起作用了,但不是到处都可靠。
我正在尝试使用 Tampermonkey 查找 UTC 时间偏移量并将其作为时间 return。该网站显示了我在此处拉出的偏移量
waitForKeyElements (".UTCText", getTZ_Offset);
其中 return 是一个字符串
console.log ("Found timezone offset: ", tzOffset);
一般这样08:00
也可以+ or -
然后我想把它转换成实际时间。例如,如果 UTC 时间是 00:00
,如果偏移量是 +08:00,我想打印一个字符串 "The users time is 08:00"。
我想我可以使用 momentjs 获取 UTC 时间 moment().utcOffset(tzOffset)
并传递偏移量。
当我这样做时,它只是 returns NaN
我做错了什么?
将:
之前的部分乘以60,加到第二部分:
const tzOffset = '08:00';
const [hourOffset, minuteOffset] = tzOffset.split(':').map(Number);
const totalMinuteOffset = hourOffset * 60 + minuteOffset;
console.log(totalMinuteOffset);
如果输入可能是负数,那么也要检查一下:
const tzOffset = '-08:00';
const [_, neg, hourOffset, minuteOffset] = tzOffset.match(/(-)?(\d{2}):(\d{2})/);
const totalMinuteOffset = (neg ? -1 : 1) * (hourOffset * 60 + Number(minuteOffset));
console.log(totalMinuteOffset);
A few time zones 与 UTC 的区别不仅在于小时,还在于分钟(例如,UTC +5:30,UTC +9:30),因此只是 parseInt
,即使它起作用了,但不是到处都可靠。