时刻()和时刻之间的差异(新的日期())

时间:2017-04-19 23:33:05

标签: javascript momentjs

$> moment.version
'2.18.1'
$> moment('Mon, 02 Jan 2017 06:00:00 -0800').format()
'2017-01-02T01:00:00-05:00'
$> moment(new Date('Mon, 02 Jan 2017 06:00:00 -0800')).format()
'2017-01-02T09:00:00-05:00'

我的印象是moment构造函数可以在解析字符串时简单地替换new Date()构造函数,对于JS本机Date接受的所有格式。

这是我不理解的东西还是这个错误?感觉就像一个小虫,但如果我是个白痴,我宁愿不提出问题。

这似乎是他们文档中可接受的格式:https://momentjs.com/docs/#/parsing/now/

1 个答案:

答案 0 :(得分:2)

  1. 好像他们的格式无法识别,请亲自看看
  2. 另外:-08 00-08-8也可以,但不推荐。请在此https://en.wikipedia.org/wiki/ISO_8601
  3. 遵循此iso时间格式

    $(function(){
    	var d = new Date('Mon, 02 Jan 2017 06:00:00 -0800');
    	$('#test1').text(d);
    	$('#test2').text(moment('Mon, 02 Jan 2017 06:00:00 -0800').format());
    	$('#test3').text(moment('Mon, 02 Jan 2017 06:00:00 -08:00').format());
      $('#test4').text(moment('Mon, 02 Jan 2017 06:00:00 -800').format());
    	$('#test5').text(moment(new Date('Mon, 02 Jan 2017 06:00:00 -0800')).format());
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
    <div id="test1"></div><br>
    <div id="test2"></div><br>
    <div id="test3"></div><br>
    <div id="test4"></div><br>
    <div id="test5"></div>