用于前端常见的数据格式化,如手机号脱敏,金额格式化展示,字符串去除空白字符等
下载链接 拷贝压缩好的代码到本地的 js 文件引入
<script src="anyFormat.js"></script>
npm install any-format --save
yarn add any-format
pnpm add any-format
// 局部导入
import { moneyFormat } from 'any-format';
moneyFormat(12000); //12,000.00
// 导入所有
import * as anyFormat from 'any-format';
anyFormat.moneyFormat(12000); //12,000.00
desensitizationFormat(param1, param2, param3);
入参:param1(string):原字符串 param2(number):起始保留长度 param3(number):结束保留长度,到String.length
例子
import { desensitizationFormat } from 'any-format';
desensitizationFormat('浙江省杭州市', 2, 1); //浙江***市
desensitizationFormat('浙江省杭州市', 2, 0); //浙江****
desensitizationFormat('浙江省杭州市', 0, 2); //****州市
phoneFormat(param1);
入参:param1(string):手机号字符串
例子
import { phoneFormat } from 'any-format';
phoneFormat('17611112222'); //176****2222
emailFormat(param1);
入参:param1(string):邮箱字符串
例子
import { emailFormat } from 'any-format';
emailFormat('1234abcdefg@163.com'); //123****@163.com
identityFormat(param1);
入参:param1(string):身份证号字符串
例子
import { identityFormat } from 'any-format';
identityFormat('330921199110253510'); //330***********3510
nameFormat(param1, param2, param3);
入参:param1(string):姓名字符串 param2(number):明文展示的长度,其他变为*(默认为1)param3(number):是否倒序隐藏(0:正序,1:倒序,默认为0)
例子
import { nameFormat } from 'any-format'
nameFormat('王爱红') //王**
nameFormat('王爱红', 1) //王**
nameFormat('王爱红', 2) //王爱*
nameFormat('王爱红', 1, 1) //**红
nameFormat('王爱红', 2, 1) //*爱红
bankCardFormat(param1);
入参:param1(string):银行卡号字符串
例子
import { bankCardFormat } from 'any-format';
bankCardFormat('6212268202014638888'); //'6212 **** **** 8888'
moneyFormat(param1, param2);
入参:param1(string | number):金额字符串或者数字 param2(string):分隔符号(默认为,)
例子
import { moneyFormat } from 'any-format';
moneyFormat(12000); //12,000.00
moneyFormat(12000, '~'); //12~000.00
numberFormat(param1, param2);
入参:param1(string | number):原数据 param2(string):分隔符号(默认为,)
例子
import { numberFormat } from 'any-format';
numberFormat(10000); //10,000
numberFormat(10000, '-'); //10-000
bigNumberTransform(param1);
入参:param1(string | number):大额数据
例子
// 入参:数字值
import { bigNumberTransform } from 'any-format';
bigNumberTransform(100); //100
bigNumberTransform(1000); //1千
bigNumberTransform(10000); //1万
bigNumberTransform(10000000); //1千万
bigNumberTransform(100000000); //1亿
dateFormat(param1, param2);
入参:param1(string | date):日期字符串或者日期对象 param2(string):格式化字符串(默认yyyy-MM-dd)
例子
import { dateFormat } from 'any-format';
dateFormat(new Date()); //2023-01-03
dateFormat(new Date(), 'yyyy/MM/dd'); //2023/01/03
dateFormat(new Date(), 'yyyy-MM-dd hh:mm:ss'); //2023-01-03 12:12:12
toCamelFormat(param1, param2);
入参:param1(string):非驼峰字符串 param2(string):非驼峰字符串间隔符
例子
import { toCamelFormat } from 'any-format';
toCamelFormat('aa_bb_cc'); //aaBbCc
toCamelFormat('aa-bb-cc', '-'); //aaBbCc
stripFormat(param1, param2);
入参:param1(string):原字符串 param2(string):默认不传或者传all去除所有空格,trim:去首尾空格,head:去头部空格,tail:去尾部空格
例子
import { stripFormat } from 'any-format';
stripFormat(' abc df '); //'abcdf'
stripFormat(' abc df ', 'trim'); //'abc df'
stripFormat(' abc df ', 'head'); //'abc df '
stripFormat(' abc df ', 'tail'); //' abc df'
truncateFormat(param1, param2, param3);
入参:param1(string):原字符串 param2(number):截断的长度(默认为10) param3(string):截断后拼接的后缀(默认是...)
例子
import { truncateFormat } from 'any-format';
truncateFormat('abcdefghigklmn', 6); //'abcdef...'
truncateFormat('abcdefghigklmn', 100); //'abcdefghigklmn'
truncateFormat('abcdefghigklmn', 6, '等等'); //'abcdef等等'
toUpperCaseFormat(param1);
入参:param1(string):原字符串
例子
import { toUpperCaseFormat } from 'any-format';
toUpperCaseFormat('world'); //'WORLD'
toLowerCaseFormat(param1);
入参:param1(string):原字符串
例子
import { toLowerCaseFormat } from 'any-format';
toLowerCaseFormat('WORLD'); //'world'
toLowerLineFormat(param1);
入参:param1(string):原字符串
例子
import { toLowerLineFormat } from 'any-format';
toLowerLineFormat('isBetter'); //'is_better'
toLowerLineFormat('IsBetter'); //'is_better'
noDataFormat(param1, param2);
入参:param1(string):原字符串 param2(string):替换字符串(默认'')
例子
import { noDataFormat } from 'any-format';
noDataFormat(null); // '';
noDataFormat('null'); // '';
noDataFormat(undefined); // '';
noDataFormat('undefined'); // '';
noDataFormat(undefined, '-'); // '-';
noDataFormat('abc'); // 'abc';
urlParmasFormat(param);
入参:param(string):字符串(默认window.location.search.slice(1))
例子
import { urlParmasFormat } from 'any-format';
urlParmasFormat(); // 当前url的参数转为对象;
urlParmasFormat('a=1&b=2'); // {a: '1', b: '2'}
compareVersion(v1, v2);
入参:v1(string):2.0.0 v2(string):2.1.0
例子
import { compareVersion } from 'any-format';
compareVersion('2.0.0', '2.0.0'); // 0
compareVersion('2.0.0', '2.0'); // 0
compareVersion('2.1.0', '2.0.0'); // 1
compareVersion('2.0.1', '2.0.0'); // 1
compareVersion('2.1.0', '3.0.0'); // -1
compareVersion(dateInput, format);
入参:dateInput(Date/string):new Date format(string):yyyy-MM-dd HH:mm:ss
例子
import { timeAgoFormat } from 'any-format';
const now = new Date();
const dateInput = new Date(now.getTime() - 50 * 1000); // 50 seconds ago
const result = timeAgoFormat(dateInput); // '刚刚'
const now = new Date();
const dateInput = new Date(now.getTime() - 30 * 60 * 1000); // 30 minutes ago
const result = timeAgoFormat(dateInput); // 30分钟前
const now = new Date();
const dateInput = new Date(now.getTime() - 2 * 3600 * 1000); // 2 hours ago
const result = timeAgoFormat(dateInput); // 2小时前
const now = new Date();
const dateInput = new Date(now.getTime() - 1 * 86400 * 1000); // 1 day ago
const result = timeAgoFormat(dateInput); // 1天前
// 大于3天展示具体的日期
const dateInput = new Date(2023, 1, 15); // April 15, 2023 10:30:45
const result = timeAgoFormat(dateInput, 'yyyy-MM-dd'); // '2023-02-15'
大鱼 |
Deek-dark |