工具类2

2018-10-17  本文已影响0人  奇怪的双子座

import Vue from 'vue'

/* eslint-disable */

(function(window) {

    var Common = {};

    //中国标准时间转换为自己想要的格式

    // 用法  Common.formatChinaTime(dateValue,'yyyy-MM-dd HH:mm:ss')

    Common.formatChinaTime = function(time,  format) {

        var  t  =  new  Date(time);

        var  tf  =   function(i) { return  (i  <  10  ?  '0'  :  '')  +  i };

        return  format.replace(/yyyy|MM|dd|HH|mm|ss/g,  function(a) {

            switch (a) {

                case  'yyyy':

                                    return  tf(t.getFullYear());

                    break;

                case  'MM':

                                    return  tf(t.getMonth()  +  1);

                    break;

                case  'mm':

                                    return  tf(t.getMinutes());

                    break;

                case  'dd':

                                    return  tf(t.getDate());

                    break;

                case  'HH':

                                    return  tf(t.getHours());

                    break;

                case  'ss':

                                    return  tf(t.getSeconds());

                    break;

            }

        })

    };

    // 中国标准时间格式

    Common.setTimeformat = function(time) {

        if (time && !(time instanceof Array)) {

            time = Common.formatChinaTime(time, 'yyyy-MM-dd');

            // 转换为时间戳存储

            time = Date.parse(new Date(time));

            return time

        } else if (time && time instanceof Array) {

            time.forEach(function(item) {

                if (item.startTime) {

                    item.startTime = Common.setTimeformat(item.startTime);

                }

                if (item.endTime) {

                    item.endTime = Common.setTimeformat(item.endTime);

                }

            })

            return time

        } else {

            return ""

        }

    };

    // 字符串截取

    // 用法 Common.strCutout(str,'想要截取的类型')

    Common.strCutout = function(str, cutType) {

        var result = str.split(cutType);

        var list = [];

        for (var i = 0; i < result.length; i++) {

            list.push(result[i])

        }

        return list;

    };

    // 对象添加新属性

    // 用法 obj = addProperty(原对象, 新对象);

    Common.addProperty = function(obj1, obj2) {

        for (var r in obj2) {

            eval("obj1." + r + "=obj2." + r);

        }

        return obj1;

    };

    // 深拷贝对象

    Common.deepCopyObj = function(obj) {

        if (typeof obj != 'object') {

            return obj;

        }

        var newobj = {};

        for (var attr in obj) {

            newobj[attr] = Common.deepCopyObj(obj[attr]);

        }

        return newobj;

    };

  // 深拷贝数组

    Common.deepCopyArrayObj = function( array ) {

    let arr = [];

    for ( let arrItem of array ) {

      if ( arrItem instanceof Array) {

        arr.push(Common.deepCopyArrayObj(arrItem));

        continue;

      } else if (arrItem instanceof Object) {

        let obj = {};

        for ( const key in arrItem) {

          obj[key] = arrItem[key];

        }

        arr.push(obj);

        continue;

      } else {

        arr.push(arrItem);

        continue;

      }

    }

    return arr;

  }

    window.Common = Common

})(window);

上一篇下一篇

猜你喜欢

热点阅读