Javascript Moment.js在未来日期的情况下不正确地转换日期
我正在使用moment.js比较javascript代码中的两个日期。 输入值通过JSON字符串传递 当我提供日期2050年1月21日00:00(MM/DD/YYYY HH:MM格式)时,结果日期显示为1950年1月21日00:00。 我尝试使用以下选项:Javascript Moment.js在未来日期的情况下不正确地转换日期,javascript,json,momentjs,Javascript,Json,Momentjs,我正在使用moment.js比较javascript代码中的两个日期。 输入值通过JSON字符串传递 当我提供日期2050年1月21日00:00(MM/DD/YYYY HH:MM格式)时,结果日期显示为1950年1月21日00:00。 我尝试使用以下选项: 时刻(项目[“结束日期]).utc().format() 时刻(项目[“开始日期])。格式('MM/DD/YYYY HH:MM') 时刻(新日期(项目[“开始日期]))。格式('MM/DD/YYYY HH:MM') 但这些仍然给了我1950年
时刻(项目[“结束日期]).utc().format()
时刻(项目[“开始日期])。格式('MM/DD/YYYY HH:MM')
时刻(新日期(项目[“开始日期]))。格式('MM/DD/YYYY HH:MM')
有没有一种方法可以正确格式化这个 由于您的输入不是ISO 8601或RFC 2822格式,因此 从字符串创建时刻时,我们首先检查字符串是否与已知格式匹配,然后检查字符串是否与格式匹配,如果未找到已知格式,则返回到
新日期(字符串)
警告:浏览器对解析字符串的支持不一致。因为没有关于应该支持哪些格式的规范,所以在某些浏览器中有效的格式在其他浏览器中不起作用
对于解析ISO 8601字符串以外的任何内容的一致结果,应该使用
因此,您必须使用传递'DD/MM/YYYY HH:MM'
作为第二个参数
这里有一个活样本:
var input=“21/01/2050 00:00”;
console.log(矩(输入'DD/MM/YYYY HH:MM')。格式'MM/DD/YYYY HH:MM')代码>
因为您的输入不是ISO 8601或RFC 2822格式,因此
从字符串创建时刻时,我们首先检查字符串是否与已知格式匹配,然后检查字符串是否与格式匹配,如果未找到已知格式,则返回到新日期(字符串)
警告:浏览器对解析字符串的支持不一致。因为没有关于应该支持哪些格式的规范,所以在某些浏览器中有效的格式在其他浏览器中不起作用
对于解析ISO 8601字符串以外的任何内容的一致结果,应该使用
因此,您必须使用传递'DD/MM/YYYY HH:MM'
作为第二个参数
这里有一个活样本:
var input=“21/01/2050 00:00”;
console.log(矩(输入'DD/MM/YYYY HH:MM')。格式'MM/DD/YYYY HH:MM')代码>
。。。(但必须将输入从DD/MM/YYYY更正为MM/DD/YYYY;可能是区域设置问题。)。。。(但必须将输入从DD/MM/YYYY更正为MM/DD/YYYY;这可能是语言环境问题。)