公司网站的服务器,快速网站开发软件,深圳广告制作厂家,wordpress选择幻灯片模版没有用有个需求是这样的#xff1a;假设今天是2023/11/15 有一个表格#xff0c;表格中操作列按钮的展示与隐藏依靠开始结束日期来进行展示#xff0c;如果当前日期在开始结束日期之间#xff0c;则进行展示#xff0c;我一开始做的时候使用new Date转换成时间戳(getTime)进行比…有个需求是这样的假设今天是2023/11/15 有一个表格表格中操作列按钮的展示与隐藏依靠开始结束日期来进行展示如果当前日期在开始结束日期之间则进行展示我一开始做的时候使用new Date转换成时间戳(getTime)进行比较的
const timeFlag new Date(this.$CU.formate(new Date()).getTIme() new Date(开始日期).getTime() new Date(this.$CU.formate(new Date()).getTIme() new Date(结束日期).getTime()
if(timeFlag) {//显示按钮
}this.$CU.formate是挂载到vue原型上的一个格式化方法 /*** 获取 2021-07-14 或者 2021-07-14 10:10:20 样式的时间字符串* param {*} val 时间(Date类型的字符串 或者 2021-07-14 或者 Number类型的时间戳)* param {*} formate 时分秒hms)* returns 返回 2021-07-14 或者 2021-07-14 10:10:20*/
const formatData function (val, formate) {if (!val) {return;}if (Object.prototype.toString.call(val) [object String] !isNaN(new Date(val.replace(/-/g, /)))) {val val.replace(/-/g, /);}let y new Date(val).getFullYear(); // 年let m new Date(val).getMonth() 1; // 月let d new Date(val).getDate(); // 日let hours new Date(val).getHours(); // 时let minutes new Date(val).getMinutes(); // 分let seconds new Date(val).getSeconds(); // 秒m m 10 ? 0 m : m;d d 10 ? 0 d : d;let returnStr y - m - d;if (formate hms) {hours hours 10 ? 0 hours : hours;minutes minutes 10 ? 0 minutes : minutes;seconds seconds 10 ? 0 seconds : seconds;returnStr hours minutes seconds;}return returnStr;
};通过转换成时间戳的形式比较当前日期是否在开始结束日期之间来进行判断。 当今天我看同事的代码也有实现类似的功能的时候发现不进行时间戳转换也可以直接使用new Date()比较 注意不可进行相等比较。只能进行 比较 建议将这个方法写到项目中因为有时候将时间转换成年月日年月日时分秒字符串形式的还是非常常见的。 所以经过改造可以写成这样
const timeFlag new Date(this.$CU.formatData(new Date)) new Date(开始日期) new Date(this.$CU.formatData(new Date)) new Date(结束日期)
if(timeFlag) {// 显示按钮}