如何用javascript转换json日期记录
我从数据库中提取数据并输出JSON。其中一项提取了以这种格式输入的日期如何用javascript转换json日期记录,javascript,mysql,json,Javascript,Mysql,Json,我从数据库中提取数据并输出JSON。其中一项提取了以这种格式输入的日期2018-06-25 我试过这个: var date = new Date(element.rundate).toString().substring(0,15); 然而,输出减去了这样的一天2018年6月24日太阳日 有人知道如何纠正吗?您可以使用moment.js或 const date = new Date(element.rundate) result = date.getFullYear() + "-" + dat
2018-06-25
我试过这个:
var date = new Date(element.rundate).toString().substring(0,15);
然而,输出减去了这样的一天2018年6月24日太阳日
有人知道如何纠正吗?您可以使用moment.js或
const date = new Date(element.rundate)
result = date.getFullYear() + "-" + date.getMonth() + "-" + date.getDate();
问题是,当日期格式为
yyyy-mm-dd
时,JavaScript会将其视为,因此它将假定为UTC 00:00
但是,如果日期格式为yyyyy/mm/dd
或mm-dd-yyyy
,则将根据以下条件使用本地时间:
一天中的日期和时间应表示为当地时间
因此,将破折号-
替换为斜杠/
就可以了。或者,您也可以拆分日期的不同部分,并使用mm dd yyyy
格式创建一个新的日期字符串表示形式,但我认为前面的方法更简洁明了:
//原始日期:
常数破折号='2018-06-25';
//使用斜杠而不是破折号:
常量斜杠=破折号。替换(/-/g,\/');
//年月日yyyy代替年月日:
常量[年、月、日]=破折号.split('-');
const monthDayYear=`${month}-${day}-${year}`;
//输出:
log(`${dashes}=>${newdate(dashes)}`);
log(`${dashes}=>${slashes}=>${newdate(slashes)}`);
log(`${dashes}=>${monthDayYear}=>${newdate(monthDayYear)}`)代码>欢迎使用时区问题