开发中的到的格式转换工具代码

204 阅读1分钟

把excel文件中的日期格式的内容转回成标准时间

   // https://blog.csdn.net/qq_15054679/article/details/107712966
   export function formatExcelDate(numb, format = '/') {
   const time = new Date((numb - 25567) * 24 * 3600000 - 5 * 60 * 1000 - 43 * 1000 - 24
   * 3600000 - 8 * 3600000)
   time.setYear(time.getFullYear())
   const year = time.getFullYear() + ''
   const month = time.getMonth() + 1 + ''
   const date = time.getDate() + ''
   if (format && format.length === 1) {
     return year + format + month + format + date
   }
   return year + (month < 10 ? '0' + month : month) + (date < 10 ? '0' + date : date)
    }

以把excel格式日期 如 45621 转换为 20xx/xx/xx  这种格式

数组转成树

 export function tranListToTreeData(list) {
  // 1. 定义两个变量
  const treeList = [], map = {}

  // 2. 建立一个映射关系,并给每个元素补充children属性.
  // 映射关系: 目的是让我们能通过id快速找到对应的元素
  // 补充children:让后边的计算更方便
  list.forEach(item => {
    if (!item.children) {
      item.children = []
    }
    map[item.id] = item
  })

  // 循环
  list.forEach(item => {
    // 对于每一个元素来说,先找它的上级
    //    如果能找到,说明它有上级,则要把它添加到上级的children中去
    //    如果找不到,说明它没有上级,直接添加到 treeList
    const parent = map[item.pid]
    // 如果存在上级则表示item不是最顶层的数据
    if (parent) {
      parent.children.push(item)
    } else {
      // 如果不存在上级 则是顶层数据,直接添加
      treeList.push(item)
    }
  })
  // 返回
  return treeList
}