Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.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 将默认日期转换为其他日期(用户的本地时区)_Javascript_Jquery - Fatal编程技术网

Javascript 将默认日期转换为其他日期(用户的本地时区)

Javascript 将默认日期转换为其他日期(用户的本地时区),javascript,jquery,Javascript,Jquery,我有以下格式的默认时间:7月19日:CST下午7:00 当用户访问显示此时间的页面时,我希望根据用户的本地时间将其转换为正确的时间 有什么想法吗 谢谢首先,您需要输出希望显示的日期,但一定要指定其时区。我在这里使用GMT,但您可以使用UTC等。如果提供了原始时区,则可以将其与JavaScript自动处理的本地加载时间进行交换 <div id="timestamp">April 21, 2014 6:00 pm GMT</div> <script type="text

我有以下格式的默认时间:7月19日:CST下午7:00

当用户访问显示此时间的页面时,我希望根据用户的本地时间将其转换为正确的时间

有什么想法吗


谢谢

首先,您需要输出希望显示的日期,但一定要指定其时区。我在这里使用GMT,但您可以使用UTC等。如果提供了原始时区,则可以将其与JavaScript自动处理的本地加载时间进行交换

<div id="timestamp">April 21, 2014 6:00 pm GMT</div>
<script type="text/javascript">
    var timestamp = document.getElementById('timestamp'),
        t         = new Date(timestamp.innerHTML),
        hours     = t.getHours(), 
        min       = t.getMinutes() + '', 
        pm        = false,
        months    = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];

    if(hours > 11){
       hours = hours - 12;
       pm = true;
    }

    if(hours == 0) hours = 12;
    if(min.length == 1) min = '0' + min;

    timestamp.innerHTML = months[t.getMonth()] + ' ' + t.getDate() + ', ' + t.getFullYear() + ' ' + hours + ':' + min + ' ' + (pm ? 'pm' : 'am');
</script>
你可以和我一起玩

.ToLocalString方法使用区域设置将日期对象转换为字符串

var d = new Date();
var n = d.toLocaleString();

更多关于

一些用户没有正确设置计算机的时间…没关系-我也可以选择在“默认”时间查看时间。无论他们在计算机上使用什么时间,都可能是网站的正确时间,因为他们在浏览网站时都在计算机上。。。我想他们的时间是他们的选择。