当我运行下面的代码时:
var d = new Date(1958, 12, 23);
console.log(d.getFullYear());
console.log(d.getMonth());
console.log(d.getDate());
它返回错误的年份和月份。它跳到1959年。
为什么?
答案 0 :(得分:4)
尝试跑步:
var d = new Date(1958, 11, 23);
console.log(d.toDateString()); // Tue Dec 23 1958
答案 1 :(得分:2)
对于月份,您需要设置如下:
d = new Date(1958, 12 - 1, 23);
因为月份为0
based index。
最终代码
var d = new Date(1958, 12 - 1, 23);
console.log(d.getFullYear());
console.log(d.getMonth() + 1);
console.log(d.getDate());
控制台预览