我是靠谱客的博主 会撒娇小丸子,最近开发中收集的这篇文章主要介绍JSON.stringify转换JSON时日期时间不准确的解决方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

调用JSON.stringify将对象转为对应的字符串时,如果包含时间对象,时间对象会被转换为国家标准时间(ISO),而不是当前国家区域的时间,测试代码如下:

复制代码 代码如下:

<script>
    //var o = new Date();
    //console.log(o.toString())//中国时区时间,格式如“Wed Jun 11 2014 10:51:42 GMT+0800”
    //console.log(JSON.stringify(o)); //输出国际标准时间(ISO),减少了8个小时 格式如“2014-06-11T02:51:42.624Z”
</script>

要想JSON.stringify转换日期对象Date返回当前所在国家的时区,而不是国际标准时间,可以重写Date对象的prototype的toJSON方法,返回自定义时间格式,因为JSON.stringify调用的就是Date对象的toJSON方法,示例如下:

复制代码 代码如下:

<script>
    Date.prototype.toJSON = function () { return this.toLocaleString(); }
    var o = new Date();
    console.log(o.toString())//默认格式:“Wed Jun 11 2014 10:51:42 GMT+0800”
    console.log(JSON.stringify(o)); //输出自定义的本地时间:“2014年6月11日 10:57:27”
</script>

最后

以上就是会撒娇小丸子为你收集整理的JSON.stringify转换JSON时日期时间不准确的解决方法的全部内容,希望文章能够帮你解决JSON.stringify转换JSON时日期时间不准确的解决方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(228)

评论列表共有 0 条评论

立即
投稿
返回
顶部