我使用nodejs连接到mySql并且连接正常。 同时使用
等查询SELECT * from someTable
我得到了所需的结果。但问题是我有 存储日期的列具有给定格式。 在发送数据之前,我需要这种格式进行转换,反之亦然
file_date : Wed Jan 01 2014 05:34:53 GMT+0530 (IST)
这是我正在获取的格式
我无法从客户端以此格式发送带有日期的参数 所以我需要将这些数据转换为“DD-MM-YYYY”format.i需要这种方式,以便我可以通过“DD-MM-YYYY”中的参数并获取日期数据
答案 0 :(得分:6)
简单方法
如果您知道Moment支持您的日期格式,那么最简单的方法是构造一个时刻对象并对其进行格式化。
var file_date = 'Wed Jan 01 2014 05:34:53 GMT+0530 (IST)';
var formatted = moment(file_date).format('DD-MM-YYYY');
弃用警告:
但是,在某些时候,不推荐支持非ISO日期格式。它在某些情况下仍然可以工作但是你应该收到警告(根据弃用警告信息):
弃用警告:提供的值不是公认的ISO格式。时刻构造回落到js Date(),这在所有浏览器和版本中都不可靠。不鼓励使用非ISO日期格式,并将在即将发布的主要版本中删除。
解决方法强>
相反,如果您知道输入字符串的格式,则可以使用它来解析片刻。
var s = 'Wed Jan 01 2014 05:34:53 GMT+0530 (IST)';
var m = moment(s, 'ddd MMM DD YYYY hh:mm:ss [GMT]ZZ').format('MM-DD-YYYY');
console.log(m);
<script src="https://momentjs.com/downloads/moment.min.js"></script>
当像这样手动指定格式时,有助于使格式文档更方便:https://momentjs.com/docs/#/displaying/format/