Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.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 Moment.js在未来日期的情况下不正确地转换日期_Javascript_Json_Momentjs - Fatal编程技术网

Javascript Moment.js在未来日期的情况下不正确地转换日期

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年

我正在使用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年而不是2050年的时间


    有没有一种方法可以正确格式化这个

    由于您的输入不是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;这可能是语言环境问题。)