@ljweb/shared-util

v0.3.0

Published

Lejian front-end shared utils

Downloads

27

Readme

@ljweb/shared-util

工具库

formatDate

事件格式化

参数

1、v(MomentInput) 时间 2、format(string) 时间格式 默认值:YYYY-MM-DD 3、locale(string) 国际化 默认值:zh-CN

返回

返回格式化后的时间(string)

例子

formatDate(moment(1695031864677), 'YYYY-MM-DD HH:mm:ss', 'zh-CN')
// => Logs `2023-09-18 18:11:04`.

getEnv

从对象中获取值

参数

1、key(string) 目标key 2、defaultValue(any) 默认值 3、obj(object) 目标对象

返回

目标key对应的值 如果没值则返回默认值

例子

getEnv('b', 'aa', {
  b: {
    c: '222'
  }
})''
// => Logs {c: '222'}
getEnv('b.c', 'aa', {
  b: {
    c: '222'
  }
})
// => Logs `222`
getEnv('b.d', 'aa', {
  b: {
    c: '222'
  }
})
// => Logs `aa`

isWechat

判断当前浏览器环境是否是微信

返回

boolean

例子

isWechat()
// => true or false

isWechatWork

判断当前浏览器环境是否是企业微信

返回

boolean

例子

isWechatWork()
// => true or false

isDingTalk

判断当前浏览器环境是否是钉钉

返回

boolean

例子

isDingTalk()
// => true or false

isFeishu

判断当前浏览器环境是否是飞书

返回

boolean

例子

isFeishu()
// => true or false

getBrowser

获取浏览器类型和版本

返回

{ type: BrowserType; version: string; }

类型

enum BrowserType {
  IE = 'ie',
  Edge = 'edge',
  Firefox = 'firefox',
  Chrome = 'chrome',
  Opera = 'opera',
  Safari = 'safari',
}

例子

getBrowser()

equals

比较两个对象是否相等

参数

1、x(any) 对象1 2、y(any) 对象2

返回

boolean

例子

equals('aaa', 'bbb')
// => false
equals('aaa', 'aaa')
// => true
equals({
  a: '11'
}, {
  a: '11'
})
// => true
equals({
  a: '11'
}, {
  a: '22'
})
// => false

omit

删除object对象的属性

参数

1、obj(object) 2、keys(Array | string)

返回

object

例子

omit({
  a: '11',
  b: '22'
}, ['a'])
// => {b: '22'}
omit({
  a: '11',
  b: '22'
}, 'a')
// => {b: '22'}
omit({
  a: '11',
  b: '22',
  c: '33',
}, 'a', 'b')
// => {c: '33'}

pick

创建一个从 object 中选中的属性的对象。

参数

1、obj(object) 2、keys(Array | string)

返回

object

例子

var object = { 'a': 1, 'b': '2', 'c': 3 };
 
pick(object, ['a', 'c']);
// => { 'a': 1, 'c': 3 }

trailingSlash

末尾添加'/'

参数

1、path(string)

返回

string

例子

trailingSlash('/a')
// Logs => '/a/'

isAbsoluteUrl

判断是否为绝对URL地址

参数

1、url(string)

返回

boolean

例子

isAbsoluteUrl('https://www.lejian.com/')
// => true
isAbsoluteUrl('/aa')
// => false

absoluteGo

绝对URL跳转

参数

1、url(string) url 目标URL 2、replace(boolean) 是否使用replace方式跳转, 默认:false

例子

absoluteGo('https://www.lejian.com/')
absoluteGo('https://www.lejian.com', true)

promisify

Promise 格式化

参数

1、promise(any)

返回

Pormise

例子

promisify(1)
// => Promise.resolve(1)