javascript中取前n天日期的两种方法分享

当我们需要获取前n天的日期时,可以利用JavaScript的Date对象和数组的方法来完成,以下是两种实现方法:

方法一:使用Date对象

/**
 * 根据当前日期计算前n天的日期
 * @param {Number} n 前n天的日期
 */
function getNDaysBefore(n) {
  var now = new Date();
  var last = new Date(now.getTime() - n * 24 * 3600 * 1000);
  var year = last.getFullYear();
  var month = last.getMonth() + 1;
  var date = last.getDate();
  return year + '-' + month + '-' + date;
}

console.log(getNDaysBefore(7)); // 输出7天前的日期,例如:2019-10-23

该函数接受一个参数n表示要获取前几天的日期,通过Date对象的getTime()方法获取当前日期的毫秒数,然后根据n天的毫秒数得到n天前的日期,最后格式化日期字符串输出。

方法二:使用数组的map方法

/**
 * 根据当前日期计算前n天的日期
 * @param {Number} n 前n天的日期
 */
function getNDaysBefore(n) {
  var now = new Date();
  var days = new Array(n).fill('').map((item, index) => {
    var date = new Date(now.getTime() - (index + 1) * 24 * 3600 * 1000);
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    return year + '-' + month + '-' + day;
  })
  return days;
}

console.log(getNDaysBefore(7)); // 输出7天前到昨天的日期字符串数组,例如:['2019-10-23', '2019-10-24', '2019-10-25', '2019-10-26', '2019-10-27', '2019-10-28', '2019-10-29']

该函数接受一个参数n表示要获取前几天的日期,通过数组的fill方法创建一个长度为n的数组,然后通过数组的map方法遍历每一项,依次计算出前i天的日期字符串,最后返回一个包含这几天日期字符串的数组。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript中取前n天日期的两种方法分享 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Angular.js中window.onload(),$(document).ready()的写法浅析

    Angular.js在页面加载和渲染完成后,可以使用一些方法来操作DOM元素,例如window.onload()和$(document).ready()。但是在Angular.js中,推荐使用指令来操作DOM元素。本文将分别对window.onload()和$(document).ready()以及指令的使用进行讲解。 window.onload()的用法 …

    JavaScript 2023年6月10日
    00
  • 使用JavaScript构建JSON格式字符串实现步骤

    构建JSON格式字符串是常见的前端开发任务,使用JavaScript可以方便地生成符合标准的JSON格式字符串。以下是使用JavaScript构建JSON格式字符串的完整攻略。 步骤 定义要转换成JSON格式字符串的JavaScript对象。 使用JSON.stringify()方法将JavaScript对象转换成JSON格式字符串。 根据需要使用该JSON…

    JavaScript 2023年5月19日
    00
  • JS防止网页被嵌入iframe框架的方法分析

    基础方法 如果我们想要阻止我们的网页被嵌入在 iframe 框架中,可以在代码中加入以下的 JS 代码: if (self != top) { top.location.href = self.location.href; } 这段代码的作用是检测当前页面是否在顶级窗口中打开,如果不是顶级窗口,那么将会通过修改顶级窗口的 URL 来让页面跳出框架。 利用 X…

    JavaScript 2023年6月11日
    00
  • asp.net后台cs中的JSON格式变量在前台Js中调用方法(前后台示例代码)

    在asp.net中,可以通过后台cs文件生成JSON格式的数据,然后在前台的JavaScript代码中调用这些数据。下面是实现该功能的具体步骤: 1. 在后台cs文件中生成JSON格式数据 我们可以使用C#的JsonObject类来生成JSON格式的数据。示例代码如下: using System.Web.Script.Serialization; // 创建…

    JavaScript 2023年5月27日
    00
  • JS 强制设为首页的代码

    下面是几个步骤和示例说明: 步骤一:创建按钮 我们要先创建一个按钮,这个按钮会放置在网站的适当位置,用于点击后触发设为首页的功能。可以使用HTML的标签和CSS样式来创建按钮,如下所示: <a href="#" id="setHomePage">设为首页</a> 上述代码中,我们创建了一个id为…

    JavaScript 2023年6月11日
    00
  • ES6解构赋值(数组,对象,函数)使用详解

    ES6 解构赋值详解 在ES6中,解构赋值是一种方便快捷地从数组、对象、函数等中提取数据的方式。解构赋值可以大大简化代码,使其更加具有可读性和易于维护。 数组的解构赋值 在ES6中,我们可以通过数组的解构赋值,方便快捷地将数组的值放入变量中。例如: // ES6数组解构赋值示例 let [x, y] = [1, 2]; console.log(x); // …

    JavaScript 2023年6月10日
    00
  • 使用Post提交时须将空格转换成加号的解释

    在使用POST方式提交表单的时候,浏览器默认会将表单数据按照key/value的形式进行编码,并以”application/x-www-form-urlencoded”的格式提交到服务器端。其中,key/value间以等号(=)连接,每组key/value间使用&符号分隔。因此,如果表单数据中存在空格等特殊字符,可能会导致数据被编码后出现错误,不能正…

    JavaScript 2023年6月10日
    00
  • Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统

    Bootstrap栅格系统是Bootstrap框架的一个重要组成部分,它可以帮助我们实现页面的自适应效果,让同一份代码在不同尺寸的设备上都能够呈现出良好的显示效果。下面是Bootstrap栅格系统的完整攻略: 什么是Bootstrap栅格系统 Bootstrap栅格系统由一系列的栅格列组成,每个栅格列的宽度是固定的,可以根据设备的屏幕尺寸进行自动调整。Boo…

    JavaScript 2023年6月1日
    00
合作推广
合作推广
分享本页
返回顶部