1.0.5 • Published 2 years ago

seiminutils v1.0.5

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

安装

浏览器环境

<script src="./node_modules/seiminutils/lib/seiminutils.js"></script>

通过 npm

npm install seiminutils

使用

// esm(全部导入)
import seiminutils from "seiminutils";
// esm(按需导入)
import dateFormat from "seiminutils/es/dateFormat.js"; //格式化日期
import multisort from "seiminutils/es/multisort.js"; //对象数组排序
// cjs
const seiminutils = require("seiminutils");

基础

getDataType - 获取数据类型

seiminutils.getDataType();
// => undefined
seiminutils.getDataType(null);
// => null
seiminutils.getDataType([]);
// => array

日期

dateFormat - 格式化日期

seiminutils.dateFormat();
// => 当前日期
seiminutils.dateFormat(1662280786269, "yyyy-MM-dd hh:mm:ss");
// => 2022-09-04 16:39:46
seiminutils.dateFormat(1662280786269, "yyyy-MM-dd");
// => 2022-09-04

数组

multisort - 对象数组排序

const data = [
  { name: "张三", age: 29, grade: 90 },
  { name: "李四", age: 28, grade: 90 },
  { name: "王五", age: 27, grade: 100 },
];
seiminutils.multisort(
  data,
  (a, b) => a.grade - b.grade,
  (a, b) => a.age - b.age
);
// 先按分数递增,再按年龄递增
// [
//   { name: '李四', age: 28, grade: 90 },
//   { name: '张三', age: 29, grade: 90 },
//   { name: '王五', age: 27, grade: 100 }
// ]

tranListToTreeData - 扁平化结构转成树形结构

const data = [
  { id: 1, name: "司令", pid: 0 },
  { id: 2, name: "军长", pid: 1 },
  { id: 3, name: "副军长", pid: 1 },
  { id: 4, name: "师长1", pid: 2 },
  { id: 6, name: "师长2", pid: 2 },
  { id: 7, name: "师长3", pid: 3 },
  { id: 8, name: "师长4", pid: 3 },
  { id: 9, name: "师长5", pid: 3 },
];
seiminutils.tranListToTreeData(data, 0, "pid");
// 树形结构
// [
//   {
//     id: 1,
//     name: "司令",
//     pid: 0,
//     children: [
//       {
//         id: 2,
//         name: "军长",
//         pid: 1,
//         children: [
//           {
//             id: 4,
//             name: "师长1",
//             pid: 2,
//             children: [],
//           },
//           {
//             id: 6,
//             name: "师长2",
//             pid: 2,
//             children: [],
//           },
//         ],
//       },
//       {
//         id: 3,
//         name: "副军长",
//         pid: 1,
//         children: [
//           {
//             id: 7,
//             name: "师长3",
//             pid: 3,
//             children: [],
//           },
//           {
//             id: 8,
//             name: "师长4",
//             pid: 3,
//             children: [],
//           },
//           {
//             id: 9,
//             name: "师长5",
//             pid: 3,
//             children: [],
//           },
//         ],
//       },
//     ],
//   },
// ]

tranTreeToListData - 树形结构转扁平化结构

const data = [
  {
    id: 1,
    name: "司令",
    pid: 0,
    children: [
      {
        id: 2,
        name: "军长",
        pid: 1,
        children: [
          {
            id: 4,
            name: "师长1",
            pid: 2,
            children: [],
          },
          {
            id: 6,
            name: "师长2",
            pid: 2,
            children: [],
          },
        ],
      },
      {
        id: 3,
        name: "副军长",
        pid: 1,
        children: [
          {
            id: 7,
            name: "师长3",
            pid: 3,
            children: [],
          },
          {
            id: 8,
            name: "师长4",
            pid: 3,
            children: [],
          },
          {
            id: 9,
            name: "师长5",
            pid: 3,
            children: [],
          },
        ],
      },
    ],
  },
];
seiminutils.tranTreeToListData(data, 0, "pid");
// 扁平化结构
// [
//   { id: 1, name: "司令", pid: 0 },
//   { id: 2, name: "军长", pid: 1 },
//   { id: 3, name: "副军长", pid: 1 },
//   { id: 4, name: "师长1", pid: 2 },
//   { id: 6, name: "师长2", pid: 2 },
//   { id: 7, name: "师长3", pid: 3 },
//   { id: 8, name: "师长4", pid: 3 },
//   { id: 9, name: "师长5", pid: 3 },
// ]
1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago