javascript - 如何在 Javascript 中从日期中减去 10 天

标签 javascript

这是我的解决方案: 感谢您提供的所有建议和帮助。我最终使用了 moment.js,现在这个日期情况正在按我的需要工作。这是我对 moment.js 所做的:

var preorderdate = moment(date).subtract('days',10).format('MMMM D, YYYY');
var releasedate = moment(date).format('MMMM D, YYYY');

我重命名了一些变量,但您可以看到我使用了日期变量,减去 10 天并将其格式化为 2014 年 2 月 12 日。我使用了一个单独的变量并使用 moment.js 对其进行了格式化。这个脚本非常棒。如果没有 Pointy 的建议,我永远不会找到它。非常感谢大家!

我不是 JS 专家,但我试图从一串“2014 年 2 月 12 日”中减去 10 天,但无济于事。因此,当我运行我的代码时,我试图让它显示为“2014 年 2 月 2 日”。

function isbnPreOrder (isbn, date) {
    var date = 'February 12, 2014';
    var m_names = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
    var d = new Date();
    var curr_date = d.getDate()-10;
    var curr_month = d.getMonth();
    var curr_year = d.getFullYear();
    var predate = (m_names[curr_month]+" "+curr_date+", "+curr_year);
}

最佳答案

创建一个 Date 实例:

var date = new Date("2014-02-12");

然后将其时间戳设置回 10 天:

date.setDate( date.getDate() - 10 );

您不能依赖浏览器能够/愿意解析日期格式“2014 年 2 月 12 日”。如果您在日期格式方面别无选择,那么您将不得不自己解析或使用 a helper library . ( Another possibility here. )

关于javascript - 如何在 Javascript 中从日期中减去 10 天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21736240/

相关文章:

javascript - lodash 按多个键对数组进行分组

javascript - 我想在 Jquery 中查看此 $.get() ajax 函数的源代码

javascript - 仅使用 javascript 清除 DIV 中的所有文本字段

javascript - 当选项中包含 noopener 时,Window.open 忽略高度和宽度

javascript - 从 Chrome 扩展程序中的内容脚本传递消息

javascript - 显示另一个元素(类)时隐藏 .innerHTML :none;

javascript - Google Charts 中的动态数据加载

javascript - 启动 react 应用程序时出错

javascript - Safari 中的 html2canvas 不在 SVG 路径上呈现 Javascript style.fill

javascript - 在表单字段已满之前保持提交按钮处于禁用状态