所以我正在使用这段代码
let obj = {print: rows}
res.render('../views/pages/data', obj)
使用此代码将数据呈现在ejs文件中
<table>
<% print.forEach(function (student) { %>
<tr class="table-info">
<td><%= student.firstName %></td>
<td><%= student.lastName %></td>
<td><%= student.building %></td>
<td><%= student.room %></td>
<td><%= student.checkIn %></td>
<td><%= student.checkOut %></td>
</tr>
<% }) %>
,但是checkIn和checkOut日期的显示方式与MySQL中不同。 在数据库中,它仅显示数据和时间,但是当我将其显示在ejs文件上时,它将显示checkIn和checkOut
Mon Nov 19 2018 12:56:09 GMT-0500 (Eastern Standard Time) Mon Nov 19 2018 12:56:47 GMT-0500 (Eastern Standard Time)
如何摆脱GMT-500(东部标准时间)?
答案 0 :(得分:1)
使用toUTCString()
摆脱-0500 (Eastern Standard Time)
,但GMT仍会存在。要摆脱整个GMT-0500 (Eastern Standard Time)
字符串,您需要执行以下操作:
today.toUTCString().split('GMT')[0];
最佳做法是,在服务器端将DateTime转换为String格式,或者至少在UI上呈现之前,至少将其嵌入JavaScript。
如果要在客户端(HTML)端执行此操作,则需要使用JavaScript字符串操作函数。因此,在您的情况下,应该是这样的:
<table>
<% print.forEach(function (student) { %>
<tr class="table-info">
<td><%= student.firstName %></td>
<td><%= student.lastName %></td>
<td><%= student.building %></td>
<td><%= student.room %></td>
<td><%= student.checkIn.split('GMT')[0] %></td>
<td><%= student.checkOut.split('GMT')[0] %></td>
</tr>
<% }) %>
我不确定这是否是实现所需目标的最佳方法,但是如果您不想更改代码,那么上面的代码可能是解决问题的最接近的方法。