封装个人积累的Tool工具插件(vue) ——持续更新中~~~

1.新建一个tool.js文件,写入如下代码,放入 plugins 文件夹内

 

const tool = {}

// 设置cookie
tool.setCookie = (name, value) => {
  let Days = 30
  let exp = new Date()
  exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000)
  document.cookie = name + '=' + escape(value) + ';expires=' + exp.toGMTString()
}

// 获取cookie
tool.getCookie = name => {
  let arr = document.cookie.replace(/\s/g, '').split(';')
  for (let i = 0; i < arr.length; i++) {
    let tempArr = arr[i].split('=')
    if (tempArr[0] === name) {
      return decodeURIComponent(tempArr[1])
    }
  }
  return ''
}

// 删除cookie
tool.delCookie = name => {
  let exp = new Date()
  exp.setTime(exp.getTime() - 1)
  let cval = tool.getCookie(name)
  if (cval != null) {
    document.cookie = name + '=' + cval + ';expires=' + exp.toGMTString()
  }
}

// 设置sessionStorage
tool.setSession = (key, value) => {
  window.sessionStorage.setItem(key, value)
}

// 获取sessionStorage
tool.getSession = key => {
  let data = window.sessionStorage.getItem(key)
  return data
}

// 设置json格式的sessionStorage
tool.setSessionJson = (key, value) => {
  window.sessionStorage.setItem(key, JSON.stringify(value))
}

// 获取json格式的sessionStorage
tool.getSessionJson = key => {
  let dataJson = window.sessionStorage.getItem(key)
  let data = JSON.parse(dataJson)
  return data
}

// 设置localStorage
tool.setLocal = (key, value) => {
  window.localStorage.setItem(key, value)
}

// 获取localStorage
tool.getLocal = key => {
  let dataJson = window.localStorage.getItem(key)
  return dataJson
}

// 设置json格式的localStorage
tool.setLocalJson = (key, value) => {
  window.localStorage.setItem(key, JSON.stringify(value))
}

// 获取json格式的localStorage
tool.getLocalJson = key => {
  let dataJson = window.localStorage.getItem(key)
  let data = JSON.parse(dataJson)
  return data
}

// 时间戳转换标准字符串
tool.timestampToTime = (timestamp, num) => {
  let date = new Date(timestamp * 1) // 时间戳为10位需*1000,时间戳为13位的话不需乘1000
  let Y = date.getFullYear() + '-'
  let M =
    (date.getMonth() + 1 < 10
      ? '0' + (date.getMonth() + 1)
      : date.getMonth() + 1) + '-'
  let D = date.getDate() + ' '
  let h = date.getHours() + ':'
  let m = date.getMinutes() + ':'
  let s = date.getSeconds()
  if (num === '1') {
    return Y + M + D + h + m + s
  } else if (num === '2') {
    return Y + M + D
  } else if (num === '3') {
    return h + m + s
  }
}

// 日期格式转为日期标准字符串
tool.formatDate = date => {
  let y = date.getFullYear()
  let m = date.getMonth() + 1
  m = m < 10 ? '0' + m : m
  let d = date.getDate()
  d = d < 10 ? '0' + d : d
  return y + '-' + m + '-' + d
}

// 常用校验正则表达式
tool.regTest = () => {
  let obj = {
    adujstEmail: /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/, // 校验邮箱
    adujstInput: /^\d*(?:\.\d{0,2})?$/, // 校验input输入最多输入两位小数的数字
    adujstTel: /^[1][0-9]{10}$/, // 校验手机电话号码
    adujstHd: /^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/, // 校验手机号码及号段
    adujstPhone: /^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/, // 校验是否为座机号码
    adujstHz: /^[\u4e00-\u9fa5]{0,}$/, // 校验汉字
    adujstNm: /^\d*$/, // 校验是否为数字,
    adujstIdCard: /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/ // 校验是否为身份证
  }
  return obj
}

// 判定对象的构造函数但是当一个函数继承自宁一个函数时该对象的实例的constructor并不会指向自己会报错
// 一般在继承的时候手动吧constructor再指向自己
tool.adugeobjSource = m => {
  if (typeof m === 'object') {
    let con = m.constructor
    console.log(con.name)
  }
}

// 判定数据类型
tool.adugeType = m => {
  let type = typeof m
  if (type !== 'object') {
    return type
  } else {
    let str = Object.prototype.toString.call(m)
    if (str === '[object Array]') {
      return 'Array'
    } else if (str === '[object Date]') {
      return 'Date'
    } else if (str === '[object Objec
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值