# 转换

# 说明

转换包含了一些常用的转换方法,导出模块名为covert

  • 导入模块
import { covert } from 'gx-instant'

# 方法

# toDateStr

说明:日期格式化

  • 参数
    • date: Date | string(日期字符串) | number(时间戳) 不输入则默认当前时间
    • split:string 分隔符,默认为'-'
  • 返回:string | false 成功返回日期格式化字符串,失败时返回false

示例

  toDateStr()  //返回当前日期格式化字符串
  toDateStr('2019-01-01')  //返回2019-01-01
  toDateStr(null)  //返回false

# toTimeStr

说明:时间格式化

  • 参数
    • time: Date | string(日期字符串) | number(时间戳) 不输入则默认当前时间
    • split:string 分隔符,默认为'-'
  • 返回:{string | false} 成功返回时间格式化字符串,失败时返回false

示例

  toTimeStr()  //返回当前日期格式化字符串
  toTimeStr(null)  //返回false

# toTimestamp

说明:日期转时间戳

  • 参数
    • val: Date | string(日期字符串) | number(时间戳) 不输入则默认当前时间
  • 返回:number | false 成功返回时间戳,失败时返回false

示例

  toTimeStr('2022-10-12')  //返回当前日期时间戳
  toTimeStr(null)  //返回false

# jsonToQs

说明:json对象转queryString

  • 参数
    • json: Object json对象/js对象
  • 返回:string key/value形式的结果

# qsToJson

说明:queryString转json对象

  • 参数
    • qs: string queryString类型的字符串
    • objTranslate: boolean 可选,规定queryString里的序列化对象是否需要转换反序列化,默认为false
  • 返回:Object 返回json对象

# jsonToForm

说明:json对象转FormData

  • 参数
    • json: Object json对象/js对象
  • 返回:FormData 结果

# b2KB

说明:字节转KB

版本:1.1.1

  • 参数
    • val: number 字节数
    • fractionDigits:number 小数位数,可选,默认2
  • 返回:string 转换后的字符串

# b2MB

说明:字节转MB

版本:1.1.1

  • 参数
    • val: number 字节数
    • fractionDigits:number 小数位数,可选,默认2
  • 返回:string 转换后的字符串

# b2GB

说明:字节转GB

版本:1.1.1

  • 参数
    • val: number 字节数
    • fractionDigits:number 小数位数,可选,默认2
  • 返回:string 转换后的字符串

# arrayBuffer2Blob

说明:将ArrayBuffer转换为Blob

版本:1.1.1

  • 参数
    • buffer: ArrayBuffer arrayBuffer数据
    • type:string 要转成的blob类型,如image/jpeg
  • 返回:Blob 转换的Blob类型数据

# arrayBuffer2File

说明:将ArrayBuffer转换为File

版本:1.1.1

  • 参数
    • buffer: ArrayBuffer arrayBuffer数据
    • name:string 文件名
    • type:string 要转成的File类型,如image/jpeg
  • 返回:File 转换的File类型数据

# arrayBuffer2Base64

说明:将ArrayBuffer转换为Base64

版本:1.1.1

  • 参数
    • buffer: ArrayBuffer arrayBuffer数据
    • type:string 要转成的File类型,如image/jpeg
  • 返回:Promise 一个携带base64或错误信息的Promise

# blob2File

说明:将Blob转换为File

版本:1.1.1

  • 参数
    • blob: Blob blob数据
    • name:string 文件名
    • type:string 要转成的File类型,如image/jpeg
  • 返回:File 转换的File类型数据

# blob2Base64

说明:将Blob转换为Base64

版本:1.1.1

  • 参数
    • blob: Blob blob数据
  • 返回:Promise 一个携带base64或错误信息的Promise

# file2Base64

说明:将File转换为Base64

版本:1.1.1

  • 参数
    • file: File File类型数据
  • 返回:Promise 一个携带base64或错误信息的Promise

提示:此方法等同于blob2Base64,因为File继承自Blob

# base642File

说明:将base64转换为File

版本:1.1.1

  • 参数
    • base64: string 文件的base64字符串
    • name:string 生成的文件名
  • 返回:File 生成的File类型数据

提示:此方法等同于blob2Base64,因为File继承自Blob

# getBlobUrl

说明:获取Blob类型的可访问的临时URL

版本:1.1.1

  • 参数
    • blob: Blob | File 传入数据
  • 返回:string 该数据可访问的临时URL

# serialize

说明:序列化数据

  • 参数
    • val: any 要序列化的数据,基本数据类型数据会原值返回
    • strategy:string 序列化策略,可选,默认simple(目前仅支持simple),simple策略采用JSON.stringify进行序列化(特殊类型会丢失精度)
  • 返回:string | any 序列化后的数据或者数据原值

# deserialize

说明:反序列化数据

  • 参数
    • val: any 要反序列化的数据,基本数据类型数据会原值返回
    • strategy:string 反序列化策略,可选,默认simple(目前仅支持simple),simple策略使用Json.parse进行反序列化操作
  • 返回:string | any 序列化后的数据或者数据原值

# clone

说明:拷贝

  • 参数
    • val:Object | Array | Map 要拷贝的数据
    • deep:boolean 是否深拷贝,可选,默认false
    • strategy:string 拷贝策略,可选,默认simple(深拷贝时simple模式使用JSON.parse(JSON.stringify())互转,会丢失精度,非simple模式会使用深层递归方式进行深拷贝),deep为true时生效
  • 返回:Object | Array | Map 拷贝后的数据

# cloneShallow

说明:浅拷贝

  • 参数
    • val:Object | Array | Map 要拷贝的数据
  • 返回:Object | Array | Map 拷贝后的数组,对象,或数据原值

# cloneDeep

说明:深拷贝

  • 参数
    • val:Object | Array | Map 要拷贝的数据
    • strategy:string 拷贝策略,可选,默认simple,使用JSON.parse(JSON.stringify())得到,会丢失精度,非simple模式会使用深层递归方式进行深拷贝
  • 返回:Object | Array | Map 深拷贝的值

# unRepeat

说明:去重

  • 参数
    • val:Array 原数组
  • 返回:Array 去重数组

# treeToList

说明:树形结构转一维数组

  • 参数
    • tree:Object 树形结构
    • childKey:string 子节点key名,默认children
  • 返回:Array 扁平化数组

# deletes

说明:删除对象中指定元素

版本:0.0.7

  • 参数
    • obj:Object | Array 要操作的对象或数组
    • key:string | Array<string> 要删除的key

提示:此方法在内部执行delete语句,会修改原始对象