Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么date.toLocalString()返回两种不同的格式?_Javascript - Fatal编程技术网

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