1.4.0 • Published 6 years ago
happy-utils v1.4.0
happy-utils
共用函数库,提取出大部分业务需要的共用的函数。
happy-utils的定位是一个共用函数库,提取出大部分业务需要的共用的函数。
npm install --save happy-utils
一、使用
使用方法类似于lodash,需要使用哪个函数,只引用当前函数。
const { getCurrentDay } = require('happy-utils/date')
或
const hu = require('happy-utils')
hu.dateUtils.getCurrentDay()
或
const { dateUtils } = require('happy-utils')
dateUtils.getCurrentDay()
二、模块
目前有10个模块:
- 1.date与日期相关的函数
- 2.string与字符串相关的函数
- 3.number与数字计算相关的函数
- 4.money与金钱相关的函数
- 5.url与URL相关的函数
- 6.validate与校验相关的函数
- 7.device与设备相关的函数
- 8.network与网络相关的函数
- 9.storage与存储相关的函数
- 10.map地图坐标转换
三、文档
3.1:Date日期
dateFormat(value, format):时间戳转日期
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 时间戳 | number | ||
format | 格式化 | string | 1."yyyy-MM-dd hh:mm:ss"2."yyyy年MM月dd日"3."MM/dd/yyyy"4."yyyyMMdd"5."hh:mm:ss" | yyyy-MM-dd hh:mm:ss |
isSameDay(a, b):是否是同一天
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
a | 日期 | Date | ||
b | 日期 | Date |
getCurrentDay(time):获取指定时间年月日
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
time | 日期 | Date |
getTimestamp(date):日期转时间戳,毫秒
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
date | 日期 | Date |
getCurrentWeek(time, language):获取指定时间属于周几
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
time | 日期 | Date | ||
language | 语言 | string | zh, en | zh |
getBeforeDate(num): 获取当前指定的前几天的日期
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
num | 前几天 | number |
formatWeek(data): 格式化周几到周几-->"周一至周三、周六、周日"
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
data | 星期几数组 | Array | 例如:1, 2, 3, 4, 5 |
formatTimes(data): 格式化时间,几点到几点-->"08:00至20:00、07:00至21:00"
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
data | 时间数组 | Array | 例如:{"startTime":"08:00","endTime":"20:00"}, {"startTime":"07:00","endTime":"21:00"} |
formatPassTime(startTime): 格式化距现在的已过时间--->"刚刚"
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
startTime | 时间 | Date |
3.2:string字符串
addZero(num): 如果数字小于10前面自动添加0
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
num | 数字 | number |
getDecodeHTMLEntities(str): 获取HTML里的文字内容,此方法只能用于浏览器,服务器环境不能使用
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
str | html字符串 | string |
getEscapeText(text): 字符串的转义,将&
, <
, >
, "
, '
分别转义为&
, <
, >
, "
, '
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
text | text处理前字符串 | string |
getUnescapeText(text): 字符串的反转义,将&
, <
, >
, "
, '
替换为转义前的符号
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
text | text处理前字符串 | string |
makeRandomString(length): 获取随机字母数字混合字符串
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
length | 长度 | number | 10 |
toCamelCase(str): 下划线格式字符串转为驼峰格式
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
str | 字符串 | string |
toSnakeCase(str): 驼峰格式字符串转为下划线格式
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
str | 字符串 | string |
mapKeysToCamelCase(value): 将Object的key从下划线格式字符串转为驼峰格式
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待处理对象或数组 | Object 或 Array |
mapKeysToSnakeCase(value): 将数组或者对象里的key从驼峰格式字符串转为下划线格式
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待处理对象或数组 | Object 或 Array |
3.3:number数字
accAdd(arg1, arg2): 加法函数,用来得到精确的加法结果
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
arg1 | 参数1 | number | ||
arg2 | 参数2 | number |
accDiv(arg1, arg2): 除法函数,用来得到精确的除法结果
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
arg1 | 参数1 | number | ||
arg2 | 参数2 | number |
accMul(arg1, arg2): 乘法函数,用来得到精确的乘法结果
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
arg1 | 参数1 | number | ||
arg2 | 参数2 | number |
accSub(arg1, arg2): 减法函数,用来得到精确的减法结果
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
arg1 | 参数1 | number | ||
arg2 | 参数2 | number |
3.4:money金钱
formatLargeNumber(value): 给大数字添加逗号分隔符
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待格式化的值 | number |
format(value, cent): 格式化金钱格式,默认是分
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待格式化的金额数字 | number | ||
cent | 是否是分 | boolean | true, false | true |
add(a, b, cent): 计算金钱的加法,返回格式化后的格式,默认是分
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
a | 参数a | number | ||
b | 参数a | boolean | ||
cent | 是否是分 | boolean | true, false | true |
minus(a, b, cent): 计算金钱的相减,返回格式化后的格式,默认是分
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
a | 参数a | number | ||
b | 参数a | boolean | ||
cent | 是否是分 | boolean | true, false | true |
multiply(a, b, cent): 计算金钱的相乘,返回格式化后的格式,默认是分
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
a | 参数a | number | ||
b | 参数a | boolean | ||
cent | 是否是分 | boolean | true, false | true |
toCent(amount): 把字符串转成以分为单位的整数
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
amount | 例如4.90可以转成490 | string |
tozhCN(num): 把字符串转成以分为单位的整数
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
num | 例如500.3可以转成伍佰元叁角整 | number 或 string |
3.5:url
getParameterByName(name, url): 获取url的参数
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
name | 键 | string |
removeParameter(url, parameter): 删除url的参数
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
name | 键 | string | ||
parameter | 参数 | string |
obj2UrlString(obj): 对象转url字符串参数
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
obj | 对象 | Object |
addParameter(url, obj): 添加url参数
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
url | 地址 | string | ||
obj | 对象 | Object |
fullUrl(path, url): 补全url
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
path | 自己填写的路径 | string | ||
url | string | 指定urls的某一个属性 |
changeBrowserUrlParameter(obj): 修改当前浏览器的参数
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
obj | 例如:{ "ken": "change" } | Object |
3.6:validate校验
isChinaMobile(value): 校验中国手机号
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 手机号码 | string |
isChinese(value): 检查字符串是否存在中文
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isDate(value): 判断一个字符串是否是 iso 标准日期
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isEmail(value):校验邮箱
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isIDcard(value): 校验身份证
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isMobile(value): 手机号
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isNumber(value): 校验数字
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isPhone(value): 校验座机号
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isPostalCode(value): 校验验证码
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isQQ(value): 校验腾讯QQ号
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
isUrl(value): 校验URL
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 待检测字符串 | string |
3.7:device设备
isWeixin(): 是否微信内置浏览器
getMobileType(): 获取手机类型
getOs(): 获取打开的网页在哪里打开
3.8:network网络
download(href, title): 生成下载
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
href | 路径 | string | ||
title | 名字 | string |
3.9:storage存储
setLocalData(key, value): 设置本地存储的值
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
key | 键 | string | ||
value | 值 | string |
getLocalData(key): 获取本地存储的值
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
key | 键 | string |
setCookie(key, value, days): 设置Cookie
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
key | 键 | string | ||
value | 值 | string | ||
days | 天数 | number |
removeCookie(name): 根据name删除cookie
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
key | 键 | string |
getCookie(name): 根据name读取cookie
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
key | 键 | string |
3.10:map地图
此方法较为特殊,调用方法如下
const { MapTransformer } = require('happy-utils/map')
// 手机坐标转精确坐标
const lnglat = MapTransformer.gpsToGcj(lng, lat)
cosnt lnglatXY = MapTransformer.gpsToBaidu(lng, lat)
3.11:other其它
setTitle(title): 动态设置标题
参数 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
title | 标题 | string |
如果需要其他的函数,请联系ddanlife@163.com添加,最好可以直接提PR。
如果觉得好用,请在github star 和fork,github地址: https://github.com/cilla123/happy-utils
1.4.0
6 years ago
1.3.9
6 years ago
1.3.8
6 years ago
1.3.7
6 years ago
1.3.6
6 years ago
1.3.5
6 years ago
1.3.4
6 years ago
1.3.3
6 years ago
1.3.2
6 years ago
1.3.1
6 years ago
1.3.0
6 years ago
1.2.9
6 years ago
1.2.8
6 years ago
1.2.7
6 years ago
1.2.6
6 years ago
1.2.5
6 years ago
1.2.4
6 years ago
1.2.3
6 years ago
1.2.2
6 years ago
1.2.1
6 years ago
1.2.0
6 years ago
1.1.0
6 years ago
1.0.9
6 years ago
1.0.8
6 years ago
1.0.7
6 years ago
1.0.6
6 years ago
1.0.5
6 years ago
1.0.4
6 years ago
1.0.3
6 years ago
1.0.2
6 years ago
1.0.1
6 years ago
1.0.0
6 years ago