2.1.2 • Published 9 months ago

nemoni-js-utils v2.1.2

Weekly downloads
-
License
ISC
Repository
-
Last release
9 months ago

目录

JS Utils 工具函数库

基础工具函数 (base.js)

getTypeOf(params)

获取数据类型

  • 参数: 任意类型的值
  • 返回: 返回数据类型字符串,如 'String','Number'等
  • 示例: getTypeOf([1,2,3]) // 'Array'

unique(params)

数组或字符串去重

  • 参数: Array或String
  • 返回: 去重后的数组或字符串
  • 示例: unique([1,1,2,3]) // [1,2,3]

deepCopy(obj)

深拷贝对象或数组

  • 参数: 需要深拷贝的对象或数组
  • 返回: 深拷贝后的新对象或数组
  • 示例: deepCopy({a:1, b:{c:2}}) // 返回全新对象

getWHForVideoOrImg(file)

获取图片或视频的宽高

  • 参数: 单个文件对象(图片或视频)
  • 返回: Promise对象,resolve时返回包含width和height的对象
  • 示例: await getWHForVideoOrImg(file) // {width: 1920, height: 1080}

getUserNameByteLength(str, nameStrLimit, maxByteLength, returnByteLength)

计算字符串字节长度,可选择截断

  • 参数:
    • str: 目标字符串
    • nameStrLimit: 字符长度限制(默认7)
    • maxByteLength: 字节长度限制(默认21)
    • returnByteLength: 是否返回字节长度(默认false)
  • 返回: 截断后的字符串或字节长度
  • 示例: getUserNameByteLength("你好世界", 3) // "你好世..."

guid(short)

生成唯一标识符

  • 参数: short - 是否生成短格式(默认false)
  • 返回: 唯一标识字符串
  • 示例: guid() // "a1b2c3d4-e5f6-g7h8-i9j0"

executeFunctions(call, token, tokenName)

执行函数或函数数组,支持token验证和延迟执行

  • 参数:
    • call: 需要执行的函数或函数数组
    • token: 可选的token参数
    • tokenName: token的名称(默认'sso')
  • 示例: executeFunctions(() => console.log('执行'), 'token123')

launchMiniProgram(options)

拉起微信小程序

  • 参数: 配置对象
  • 返回: boolean
  • 示例: launchMiniProgram({userName: 'wx1234567890'}) // true

getOpenId(code)

获取微信openID

  • 参数: 微信授权后的code码
  • 返回: Promise对象,resolve时返回openid
  • 示例: await getOpenId('code1234567890') // 'openid1234567890'

环境检测工具 (charge.js)

isweixin

检测是否在微信环境中

  • 返回: Boolean

isuc

检测是否在UC浏览器中

  • 返回: Boolean

isandroid

检测是否在Android系统中

  • 返回: Boolean

isios

检测是否在iOS系统中

  • 返回: Boolean

getType(obj)

判断传入对象的数据类型

  • 参数: 需要判断类型的对象
  • 返回: 数据类型字符串
  • 示例: getType([]) // 'Array'

getMarketUrl(appId, defaultUrl)

根据手机品牌返回对应的应用市场链接

  • 参数:
    • appId: 应用包名(默认'com.youdao.hlyd')
    • defaultUrl: 默认下载链接
  • 返回: 对应品牌手机应用市场链接或默认下载链接
  • 支持品牌: 华为、荣耀、vivo、小米、OPPO、联想、魅族等

数据验证工具 (validate.js)

validateUsername(username)

验证用户名

  • 参数: 用户名
  • 返回: 包含valid和message的对象
  • 示例: validateUsername('user123') // {valid: false, message: '用户名必须包含字母、数字和下划线'}

validatePassword(password)

验证密码

  • 参数: 密码
  • 返回: 包含valid、strength和message的对象
  • 示例: validatePassword('Test123!@#') // {valid: true, strength: 7, message: '密码强度: 强'}

validateEmail(email)

验证邮箱

  • 参数: 邮箱
  • 返回: 包含valid和message的对象
  • 示例: validateEmail('test@example.com') // {valid: true, message: ''}

mobileCheck(mobile)

验证手机号

  • 参数: 手机号
  • 返回: boolean
  • 示例: mobileCheck('13912345678') // true

idCardCheck(idCard)

验证身份证号码

  • 参数: 身份证号码
  • 返回: boolean
  • 示例: idCardCheck('110101199003077758') // true

validateIdCard(idCard)

校验身份证号码并返回详细验证结果

  • 参数: 身份证号码
  • 返回: 包含valid和message的对象
  • 示例: validateIdCard('110101199003077758') // {valid: true, message: ''}

微信工具函数 (wechat.js)

getOpenId(code)

获取微信openID

  • 参数: 微信授权后的code码
  • 返回: Promise对象,resolve时返回openid
  • 示例: await getOpenId('code1234567890') // 'openid1234567890'

navigateTo(url, options)

微信内跳转页面

  • 参数:
    • url: 需要跳转的URL地址
    • options: 配置选项
  • 返回: void
  • 示例: navigateTo('https://example.com') // 无返回

跨页面通信 (websocket.js)

2.1.2

9 months ago

2.1.1

9 months ago

2.1.0

9 months ago

2.0.0

9 months ago

1.0.0

9 months ago