web工具类(一)——字符串、日期的自定义操作类

将一些常用的操作封装到js文件中,方便代码的重复使用和简化编码

字符串去除空白操作类库

const models = {
    trim: function (str) { //删除左右两端的空格
        return str.replace(/(^\s*)|(\s*$)/g, "");
    },
    ltrim: function (str) { //删除左边的空格
        return str.replace(/(^\s*)/g, "");
    },
    rtrim: function (str) { //删除右边的空格
        return str.replace(/(\s*$)/g, "");
    }
}
export default models;

日期类型格式化操作类库

const models = {
    //格式化CST日期的字串
    formatCSTDate: function (strDate, format) {
        return this.formatDate(new Date(strDate), format);
    },
    //格式化日期,
    formatDate: function (date, format) {
        var paddNum = function (num) {
            num += "";
            return num.replace(/^(\d)$/, "0$1");
        }
        //指定格式字符
        var cfg = {
            yyyy: date.getFullYear() //年 : 4位
            , yy: date.getFullYear().toString().substring(2)//年 : 2位
            , M: date.getMonth() + 1  //月 : 如果1位的时候不补0
            , MM: paddNum(date.getMonth() + 1) //月 : 如果1位的时候补0
            , d: date.getDate()   //日 : 如果1位的时候不补0
            , dd: paddNum(date.getDate())//日 : 如果1位的时候补0
            , hh: date.getHours()  //时
            , mm: date.getMinutes() //分
            , ss: date.getSeconds() //秒
        }
        format || (format = "yyyy-MM-dd hh:mm:ss");
        return format.replace(/([a-z])(\1)*/ig, function (m) { return cfg[m]; });
    },
    //获得当前日期的前一天
    getYesterday: function (date) {
        var yesterday_milliseconds = date.getTime() - 1000 * 60 * 60 * 24;
        var yesterday = new Date();
        yesterday.setTime(yesterday_milliseconds);
        return yesterday;
    },
    //获得当前日期的前一月
    getLastMonth: function (date) {
        var daysInMonth = new Array([0], [31], [28], [31], [30], [31], [30], [31], [31], [30], [31], [30], [31]);
        var strYear = date.getFullYear();
        var strDay = date.getDate();
        var strMonth = date.getMonth() + 1;
        if (strYear % 4 == 0 && strYear % 100 != 0) {
            daysInMonth[2] = 29;
        }
        if (strMonth - 1 == 0) {
            strYear -= 1;
            strMonth = 12;
        }
        else {
            strMonth -= 1;
        }
        strDay = daysInMonth[strMonth] >= strDay ? strDay : daysInMonth[strMonth];
        return new Date(strYear, strMonth, strDay);
    },
    //获得当前日期的前一年
    getLastYear: function (date) {
        var strYear = date.getFullYear() - 1;
        var strDay = date.getDate();
        var strMonth = date.getMonth() + 1;
        return new Date(strYear, strMonth, strDay);
    }
}
export default models;

以上将字符串和日期的操作方法都放在模块中,方便调用。

调用方式

<script>
     import date from "../../Utils/dateHelper";
     let  value="2017-01-14T02:54:28.502Z";
     let formatDate = date.formatCSTDate(value,"yyyy-MM-dd hh:mm:ss");
     console.log(formatDate);
 </script>

将写好的模块通过import关键字引入,然后调用该模块中对应的方法实现相应的功能。




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值