Convert UTC date time to local date time

前端 未结 30 1782
悲哀的现实
悲哀的现实 2020-11-22 01:09

From the server I get a datetime variable in this format: 6/29/2011 4:52:48 PM and it is in UTC time. I want to convert it to the current user’s browser time us

30条回答
  •  佛祖请我去吃肉
    2020-11-22 01:24

    This is an universal solution:

    function convertUTCDateToLocalDate(date) {
        var newDate = new Date(date.getTime()+date.getTimezoneOffset()*60*1000);
    
        var offset = date.getTimezoneOffset() / 60;
        var hours = date.getHours();
    
        newDate.setHours(hours - offset);
    
        return newDate;   
    }
    

    Usage:

    var date = convertUTCDateToLocalDate(new Date(date_string_you_received));
    

    Display the date based on the client local setting:

    date.toLocaleString();
    

提交回复
热议问题