JS 常用日期时间操作工具

以下是常用日期时间操作工具方法的完整总结:

  1. 获取当前日期时间(包括年、月、日、时、分、秒)
var now = new Date();
var year = now.getFullYear(); //年份
var month = now.getMonth() + 1; //月份(注意:月份从0开始,需要加1)
var day = now.getDate(); //日期
var hour = now.getHours(); //小时
var minute = now.getMinutes(); //分钟
var second = now.getSeconds(); //秒钟
  1. 格式化日期时间(将日期时间格式化为指定的格式)
function formatDate(date, format) {
  var year = date.getFullYear();
  var month = date.getMonth() + 1;
  var day = date.getDate();
  var hour = date.getHours();
  var minute = date.getMinutes();
  var second = date.getSeconds();
  format = format.replace("yyyy", year);
  format = format.replace("MM", month < 10 ? "0" + month : month);
  format = format.replace("dd", day < 10 ? "0" + day : day);
  format = format.replace("HH", hour < 10 ? "0" + hour : hour);
  format = format.replace("mm", minute < 10 ? "0" + minute : minute);
  format = format.replace("ss", second < 10 ? "0" + second : second);
  return format;
}

使用示例:

var now = new Date();
var format = "yyyy-MM-dd HH:mm:ss";
var formattedDate = formatDate(now, format); //格式化日期时间为"2021-10-08 09:30:45"
  1. 获取指定日期的年、月、日等信息
var date = new Date("2021-10-08");
var year = date.getFullYear(); //获取年份为2021
var month = date.getMonth() + 1; //获取月份为10
var day = date.getDate(); //获取日期为8
var week = date.getDay(); //获取星期几为5(返回值为0-6,0表示星期日,1表示星期一,以此类推)
  1. 获取指定日期的时间戳
var date = new Date("2021-10-08");
var timestamp = date.getTime(); //获取时间戳为1633651200000(单位为毫秒)
  1. 计算两个日期之间的差距(返回值为毫秒数)
var startDate = new Date("2021-10-01");
var endDate = new Date("2021-10-08");
var diff = endDate.getTime() - startDate.getTime(); //计算两个日期之间的差距为毫秒数:604800000
  1. 在指定日期时间的基础上增加指定的时间
var date = new Date();
date.setFullYear(date.getFullYear() + 1); //将日期时间增加一年
date.setMonth(date.getMonth() + 1); //将日期时间增加一个月
date.setDate(date.getDate() + 1); //将日期时间增加一天
date.setHours(date.getHours() + 1); //将日期时间增加一小时
date.setMinutes(date.getMinutes() + 1); //将日期时间增加一分钟
date.setSeconds(date.getSeconds() + 1); //将日期时间增加一秒钟
  1. 比较两个日期时间的先后顺序
var date1 = new Date("2021-10-08");
var date2 = new Date("2021-10-07");
if (date1 > date2) {
  //date1比date2晚
} else if (date1 < date2) {
  //date1比date2早
} else {
  //date1和date2相同
}
  1. 获取指定月份的天数
function getDaysInMonth(month, year) {
  var date = new Date(year, month, 0);
  return date.getDate();
}

使用示例:

var month = 10; //获取10月份的天数
var year = 2021;
var daysInMonth = getDaysInMonth(month, year); //31
  1. 获取指定日期所在月份的第一天和最后一天
function getFirstAndLastDayOfMonth(date) {
  var year = date.getFullYear();
  var month = date.getMonth() + 1;
  var firstDay = new Date(year, month - 1, 1);
  var lastDay = new Date(year, month, 0);
  return {firstDay: firstDay, lastDay: lastDay};
}

使用示例:

var date = new Date("2021-10-08");
var result = getFirstAndLastDayOfMonth(date); //获取2021年10月份的第一天和最后一天
console.log(result.firstDay); //Sat Oct 01 2021 00:00:00 GMT+0800 (中国标准时间)
console.log(result.lastDay); //Mon Nov 01 2021 00:00:00 GMT+0800 (中国标准时间)
  1. 将日期时间字符串转换为Date对象
function parseDate(str) {
  var date = new Date(str);
  if (isNaN(date.getTime())) {
    //转换失败
    return null;
  } else {
    //转换成功
    return date;
  }
}

使用示例:

var str = "2021-10-08 09:30:45";
var date = parseDate(str); //将日期时间字符串转换为Date对象

上述方法可以辅助开发人员在开发过程中更方便地进行日期时间的处理和计算,从而提高开发效率

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值