我的日期字符串为:Wed Aug 30 2017 00:00:00 GMT+0530 (IST)
,我希望将其转换为:2017-8-30
现在我这样做:
moment($scope.date.selectedDate).format('YYYY-M-DD')
它正在给出正确的时间,但会发出警告:
时刻构建回到js日期
答案 0 :(得分:2)
由于输入是JS日期,因此您还需要传递输入格式。这可以通过以下方式完成:
moment('Wed Aug 30 2017 00:00:00 GMT+0530', 'ddd MMM DD YYYY HH:mm:ss GMT+-HH:mm').format('YYYY-M-DD');
答案 1 :(得分:0)
相对于警告,您可以参考这篇文章Deprecation warning: moment construction falls back to js Date。 最简单的解决方案是以ISO格式传递日期字符串。
至于日期,如果您只想在UI中使用该格式显示日期,则可以使用' date'角度过滤器:https://docs.angularjs.org/api/ng/filter/date。
在你的情况下,你可以像这样使用它:
$scope.date.selectedDate | date: 'YYYY-M-DD'
BR,
答案 2 :(得分:0)
你可以这样做:
var d = new Date('Wed Aug 30 2017 00:00:00 GMT+0530');
var formated = moment(d).format('YYYY-M-DD');