在Javascript中获取另一个城市的本地时间,可以通过以下步骤实现:
可以使用Intl.DateTimeFormat
对象来获取指定城市的本地时间。以下是一个示例代码:
function getLocalTime(city) {
const timeZone = getTimeZone(city);
if (!timeZone) {
return '无法识别的城市';
}
const now = new Date();
const formatter = new Intl.DateTimeFormat('en-US', {
timeZone: timeZone,
hour12: false,
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: '2-digit',
minute: '2-digit',
second: '2-digit'
});
return formatter.format(now);
}
function getTimeZone(city) {
const timeZones = {
'Beijing': 'Asia/Shanghai',
'New York': 'America/New_York',
'London': 'Europe/London',
// 添加更多城市和对应的时区
};
return timeZones[city] || null;
}
// 示例调用
console.log(getLocalTime('Beijing')); // 输出北京的本地时间
console.log(getLocalTime('New York')); // 输出纽约的本地时间
Intl.DateTimeFormat
在现代浏览器中广泛支持,但老旧浏览器可能不支持。可以通过Polyfill来解决兼容性问题。通过以上方法,你可以轻松地在Javascript中获取另一个城市的本地时间。
领取专属 10元无门槛券
手把手带您无忧上云