noo*_*der 17 javascript date momentjs
从我之前的帖子开始:Javascript Safari:带有字符串的新Date()在键入 时返回无效日期我使用Moment.js将日期字符串转换为基于文本框中用户输入的日期字段.这是为了防止在Chrome浏览器正常时,我在Safari和Firefox的链接帖子中描述的问题无法呈现日期.这是代码片段:
var tempDate = moment(userInputFieldDate).format('DD-MM-YYYY');
alert(tempDate);
Run Code Online (Sandbox Code Playgroud)
在Chrome中,它确实工作正常(它也用于处理Javascript Date对象)但是给了我moment.js弃用警告
弃用警告:时刻构建回落到日期.这是不鼓励的,将在即将发布的主要版本中删除.有关详细信息,请参阅https://github.com/moment/moment/issues/1407.参数:[object Object]错误
在Firefox和Safari上只是在警报窗口中提供了一个未完成的日期.所以不完全确定我应该怎么做才能将日期字符串转换为Date对象.有什么建议 ?
Mat*_*yas 78
如果您获得基于JS的日期,String
则首先使用new Date(String)
构造函数,然后将该Date
对象传递给该moment
方法.喜欢:
var dateString = 'Thu Jul 15 2016 19:31:44 GMT+0200 (CEST)';
var dateObj = new Date(dateString);
var momentObj = moment(dateObj);
var momentString = momentObj.format('YYYY-MM-DD'); // 2016-07-15
Run Code Online (Sandbox Code Playgroud)
如果dateString
是15-07-2016
,那么你应该使用该moment(date:String, format:String)
方法
var dateString = '07-15-2016';
var momentObj = moment(dateString, 'MM-DD-YYYY');
var momentString = momentObj.format('YYYY-MM-DD'); // 2016-07-15
Run Code Online (Sandbox Code Playgroud)
甜蜜又简单!
moment('2020-12-04T09:52:03.915Z').format('lll');
2020 年 12 月 4 日 下午 4:58
moment.locale(); // en
moment().format('LT'); // 4:59 PM
moment().format('LTS'); // 4:59:47 PM
moment().format('L'); // 12/08/2020
moment().format('l'); // 12/8/2020
moment().format('LL'); // December 8, 2020
moment().format('ll'); // Dec 8, 2020
moment().format('LLL'); // December 8, 2020 4:59 PM
moment().format('lll'); // Dec 8, 2020 4:59 PM
moment().format('LLLL'); // Tuesday, December 8, 2020 4:59 PM
moment().format('llll'); // Tue, Dec 8, 2020 4:59 PM
Run Code Online (Sandbox Code Playgroud)