美文网首页
前端排序函数

前端排序函数

作者: jeneen1129 | 来源:发表于2024-11-14 11:23 被阅读0次
sortMixArr(arr: any[], field: string, order: string) {
    if (!(arr && arr.length) || !field) {
      return arr
    }
    const nums: any[] = []
    const letters: any[] = []
    const others: any[] = []
    // 日期类型
    const checkDate = (d: any) => isNaN(d) && !isNaN(Date.parse(d))
    arr.forEach(item => {
      const value = item[field]
      if (/^[a-zA-Z]+[\s\S]*$/.test(value)) {
        // 字母校验
        letters.push(item)
      } else if (/^[0-9]+[\s\S]*$/.test(value) && !checkDate(value)) {
        // 数字校验
        nums.push(item)
      } else {
        others.push(item)
      }
    })
    let result: any = []
    result = result.concat(
      nums.sort((a, b) => {
        return a[field] - b[field]
      }),
      letters.sort((a, b) => {
        return a[field].localeCompare(b[field], 'zh')
      }),
      others.sort((a, b) => {
        return a[field].localeCompare(b[field], 'zh')
      })
    )
    return order == 'asc' ? result : result.reverse()
  },

注明:本文仅用于学习记录,如有侵权,请联系删除!

相关文章

  • 收集整理js常用工具函数

    (更新于2018.12.15 )持续更新... 收集整理的一些前端开发常用的工具函数 数组去重方法 数组快速排序 ...

  • Python dict排序

    sorted 函数按key值对字典排序 sorted 函数按value值对字典排序 字典列表排序

  • 2019-08-06

    NumPy - 排序、搜索和计数函数 NumPy中提供了各种排序相关功能。 这些排序函数实现不同的排序算法,每个排...

  • 各种排序方法

    冒泡排序法 选择排序法 链表排序法 qsort()函数排序法

  • vue elementUI 实现el-table 表头筛选,表头

    表头筛选、排序功能: 可以做前端筛选,排序,(存在问题,前端无法对所有数据进行筛选或者排序,只能对当页数据。 所以...

  • sort()和sorted()的区别

    sort()函数排序和sorted()函数排序区别-sorted不改变原值,而sort()改变原值 sort函数没...

  • 排序题

    公共函数 选择排序 冒泡排序 插入排序 快速排序 归并排序——迭代算法

  • 深入理解python中的排序sort

    基本排序 Sorting Basicskey函数Key Functionsoperator库函数自定义排序( Op...

  • 基本排序算法

    选择排序 插入排序 冒泡排序 中 sort 函数使用

  • 《算法笔记》4.1

    4.1.1选择排序 4.1.2插入排序 4.1.3排序题与sort函数的应用 6.9.6关于sort函数 头文件 ...

网友评论

      本文标题:前端排序函数

      本文链接:https://www.haomeiwen.com/subject/vpujjjtx.html