Javascript 为什么date.toLocalString()返回两种不同的格式?
所以我使用Javascript 为什么date.toLocalString()返回两种不同的格式?,javascript,Javascript,所以我使用Date.toLocaleString()来获取特定时区的时间,但我面临一个问题,它在两个不同的操作系统上返回两种不同的日期格式 让currentTimeInSGT=new Date().ToLocalString('SG'{ 时区:“亚洲/新加坡”, 12小时:错误 }) log(currentTimeInSGT)localeString使用系统设置来确定返回的格式,每个标记有locale的方法都将在Javascript中显示此行为 您可以使用toISOString将日期一致地转换
Date.toLocaleString()
来获取特定时区的时间,但我面临一个问题,它在两个不同的操作系统上返回两种不同的日期格式
让currentTimeInSGT=new Date().ToLocalString('SG'{
时区:“亚洲/新加坡”,
12小时:错误
})
log(currentTimeInSGT)
localeString使用系统设置来确定返回的格式,每个标记有locale的方法都将在Javascript中显示此行为
您可以使用toISOString将日期一致地转换为字符串
编辑:没有看到java脚本标记,而不是使用
sg
作为您的区域设置,您可能应该使用en sg
,如下所示
这在我检查过的所有浏览器上都产生了相同的结果。(Chrome、Firefox、Edge)
让currentTimeInSGT=new Date().toLocaleString('en-SG'{
时区:“亚洲/新加坡”,
12小时:错误
})
console.log(currentTimeInSGT)
sg是有效的区域设置吗?如果它是无效的,我认为它使用默认设置,因此不一致的“SG”应该是指新加坡?SG是。您需要使用“语言区域设置”,例如“en sg”。@JJJ但我在同一浏览器上使用不同的操作系统时,为什么会得到不同的输出?有什么想法吗,因为您没有指定区域设置,只有一种语言。@JJJ omg确实是一个愚蠢的错误,谢谢你的时间和帮助:)谢谢你的回答:)你能告诉我你测试的操作系统吗?Windows 10 Enterprise/Version 1903/OS build 18362.175