[英]Wrong date in moment.js when used with express.js
帶快遞
const express = require('express');
const moment = require('moment');
const app = express();
const generateSearchRange = (year) => (month) => {
return {
start: 0,
stop: moment([year]).endOf('year')
}
};
app.get('/foo/:year', (req, res) => {
const year = req.params.year; // 2017
res.send(generateSearchRange(year)(12)); // { "start": 0, "stop": "2016-12-31T22:59:59.999Z" }
});
app.listen(3000);
沒有快遞
const moment = require('moment');
const generateSearchRange = (year) => (month) => {
return {
start: 0,
stop: moment([year]).endOf('year')
}
};
console.log(generateSearchRange(2017)(12)); // { start: 0, stop: moment("2017-12-31T23:59:59.999") }
我不理解發生了什么事,同一函數給了我兩個不同的輸出。
它與我正常工作。 我剛剛復制了您的代碼
矩的字符串表示形式由express用於構造響應。 它調用toString方法來執行此操作。 您可以通過在添加到響應之前記錄日期來確認這一點。
let date = generateSearchRange(year)(12);
console.log(date)
res.send(date);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.