@shencom/utils-formatter
TypeScript icon, indicating that this package has built-in type declarations

1.2.0 • Public • Published

@shencom/utils-formatter

数据格式化

Install

pnpm add @shencom/utils

# or

pnpm add @shencom/utils-formatter

Basic Usage

import {
  Commafy,
  FillZeroEnd,
  FillZeroStart,
  HideIdCard,
  HidePhoneNumber,
  StringReplace,
} from '@shencom/utils-formatter';

Methods

Commafy

  • 说明: 格式化千分位分隔符、小数位

  • 类型: (val: string | number, options: number | Partial<CommafyOptions>) => string

  • 参数:

    • val - 数值
    • options - 格式化参数:number 仅指定精度(小位数),CommafyOptions 格式化处理详细配置

CommafyOptions

参数 说明 类型 默认值
spaceNumber 分割位数 number 3
separator 分隔符 string ,
precision 精度 number 2
handle 小数位数据处理方式 CommafyHandleType | ((val: number) => number)自定义处理函数 round

CommafyHandleType

  • round 只对 number 类型有效,四舍五入
  • ceil 只对 number 类型有效,向上舍入
  • floor 只对 number 类型有效,向下舍入
  • intercept 截断小数位,不做数据处理
  • 示例:
    Commafy(1000, 0); // '1,000'
    Commafy(1000.555); // '1,000.56';
    Commafy(1000.555, { handle: 'intercept' }); // '1,000.55';
    Commafy(-22456.285, 2); // '-22,456.28'
    Commafy(-22456.286, { handle: (val) => val + 0.001 }); // '-22,456.28'

BankCard

  • 说明: 格式化银行卡号,每4位分割

  • 类型: (num: string) => string

  • 参数:

    • num - 银行卡号
  • 示例:

    BankCard('6227002126191687706'); // '6227 0021 2619 1687 706'
    BankCard('622700212'); // '6227 0021 2'

FillZeroStart

  • 说明: 头部补零

  • 类型: (num: number, size: number) => string

  • 参数:

    • num - 需补 0 的数值
    • size - 加上 0 后的总长度,小数点也包含在内,若传入长度超出指定长度,则返回原数值的字符串
  • 示例:

    FillZeroStart(15, 3); // '015'
    FillZeroStart(115, 3); // '115'
    FillZeroStart(5.3, 3); // '5.3'
    FillZeroStart(-1, 3); // '-1'

FillZeroEnd

  • 说明: 尾部补零

  • 类型: (num: number, size: number) => string

  • 参数:

    • num - 需补 0 的数值
    • size - 加上 0 后的总长度,小数点也包含在内,若传入长度超出指定长度,则返回原数值的字符串
  • 示例:

    FillZeroEnd(15, 3); // '150'
    FillZeroEnd(115, 3); // '115'
    FillZeroEnd(5.3, 3); // '5.3'
    FillZeroEnd(-1, 3); // '-10'

HidePhoneNumber

  • 说明: 隐藏手机号中间信息

  • 类型: (val: string) => string

  • 参数:

    • val - 手机号
  • 示例:

    HidePhoneNumber('13818341008'); // '138****1008'

HidePhoneNumber

  • 说明: 隐藏身份证中间信息

  • 类型: (val: string) => string

  • 参数:

    • val - 身份证号码
  • 示例:

    HideIdCard('110101199003075736'); // '1101******5736'

StringReplace

  • 说明: 字符串替换

  • 类型: (str: string, symbol = '*') => string

  • 参数:

    • str - 字符串
    • symbol - 替换符号,默认 *
  • 示例:

    StringReplace('文字'); // '文*'
    StringReplace('文字文'); // '文*文'
    StringReplace('文字文字'); // '文**字'
    StringReplace('文字文字文字', '-'); // '文----字'

Readme

Keywords

Package Sidebar

Install

npm i @shencom/utils-formatter

Weekly Downloads

0

Version

1.2.0

License

ISC

Unpacked Size

40.3 kB

Total Files

8

Last publish

Collaborators

  • shencom