使用文档

引入csj-web-tools

目前仅输出ESM格式资源,CJS或IIFE格式后续逐步完善
  • node环境 或 自动化工程
    import tools from 'csj-web-tools'
    
  • windows环境 或 浏览器环境
    <script type="module">
        import tools from "https://unpkg.com/csj-web-tools/src/index.js"
    </script>
    

API

sleep(ms)

    n秒后执行

参数
  • ms 执行程序延迟毫秒数。默认值为0。
返回值
  • null
示例
    // 200毫秒后,打印hello world
    tools.sleep(200).then(res=>{
      console.log("hello world")
    })

getLocal(key)

    获取localStorage的数据对象,传key时获取指定字段的值,不传key时返回整个数据对象。

参数
  • key 默认值为null;非必传;指定要从localStorage数据对象中获取的字段。
返回值
  • Object localStorage数据对象或指定字段的值。
示例
    // 获取整个localStorage存储的数据对象  
    // 注意这里的“整个”是指通过本工具类存入localStorage的数据,而非浏览器localStorage自身所有的数据
    // 假设已存储  {name:"benboerba"}
    tools.getLocal() //返回 {name:"benboerba"}
    tools.getLocal("name") // 返回 benboerba

setLocal(obj)

    存储localStorage的数据对象,并与已经存储的数据进行合并覆盖

参数
  • obj 默认值为{};必传;要存储到localStorage中的数据对象。
返回值
  • null
示例
    // 存储数据到localStorage中,会与已存储的进行合并覆盖
    //假设已存储  {name:"benboerba",age:12}

    tools.setLocal({
      name:"baboerben",
      sex:"男"
    })

    tools.getLocal() // 返回 {name:"baboerben",age:12,sex:"男"}

clearLocal(key)

    删除localStorage的数据对象,不传key时删除整个对象,传key时删除指定字段

参数
  • key 默认值为null;非必传;要从localStorage中删除的字段。
返回值
  • null
示例
    //假设已存储  {name:"baboerben",age:12,sex:"男"}

    tools.clearLocal("age")
    tools.getLocal() // 返回 {name:"baboerben",sex:"男"}

    tools.clearLocal()
    tools.getLocal() // 返回 {}

getSession(key)

    获取sessionStorage的数据对象,传key时获取指定字段的值,不传key时返回整个数据对象

参数
  • key 默认值为null;非必传;指定要从sessionStorage数据对象中获取的字段。
返回值
  • Object sessionStorage数据对象或指定字段的值。
示例
    // 获取整个sessionStorage存储的数据对象  
    //注意这里的“整个”是指通过本工具类存入sessionStorage的数据,而非浏览器sessionStorage自身所有的数据

    //假设已存储  {name:"benboerba"}

    tools.getSession() //返回 {name:"benboerba"}

    tools.getSession("name") // 返回 benboerba

setSession(obj)

    存储sessionStorage的数据对象,并与已经存储的数据进行合并覆盖

参数
  • obj 默认值为{};必传;要存储到sessionStorage中的数据对象。
返回值
  • null
示例
    // 存储数据到sessionStorage中,会与已存储的进行合并覆盖
    //假设已存储  {name:"benboerba",age:12}

    tools.setSession({
      name:"baboerben",
      sex:"男"
    })

    tools.getSession() // 返回 {name:"baboerben",age:12,sex:"男"}

clearSession(key)

    删除sessionStorage的数据对象,不传key时删除整个对象,传key时删除指定字段

参数
  • key 默认值为null;非必传;要从sessionStorage中删除的字段。
返回值
  • null
示例
    //假设已存储  {name:"baboerben",age:12,sex:"男"}

    tools.clearSession("age")
    tools.getSession() // 返回 {name:"baboerben",sex:"男"}

    tools.clearSession()
    tools.getSession() // 返回 {}

getObjectType(obj)

    获取obj的类型

参数
  • obj 默认值为null;必传;要获取类型的目标对象。
返回值
  • String 参数obj的类型字符串
示例
    tools.getObjectType({}) // 返回 Object
    tools.getObjectType('sdf') // 返回 String

deepCompare(source, target, config = {})

    深比较两个对象,适用于表单对象的比较(目前最多支持嵌套两层对象的比较,待完善)

参数
  • source 默认值为null;必传;源对象。
  • target 默认值为null;必传;目标对象。
  • config 默认值为{};非必传;配置参数。
    • compareKeys
      默认值为[];指定要比较的字段。
    • isIgnoreSort
      默认值为true;比较数组时是否忽略排序。
返回值
  • Boolean true || false
示例
    let a={
      name:'benboerba',
      age:12
    }

    let b={
      name:'baboerben',
      age:12
    }

    let c={
      age:12,
      name:'benboerba'
    }

    let d=[1,2,3]

    let e=[3,2,1]

    tools.deepCompare(a,b) // 返回 false
    tools.deepCompare(a,c) // 返回 true
    tools.deepCompare(a,b,{compareKeys:['age']}) // 返回 true
    tools.deepCompare(d,e,{isIgnoreSort:false}) // 返回 false
    tools.deepCompare(d,e,{isIgnoreSort:true}) // 返回 true

parseDate(date)

    转换日期格式,不传date时,基于当前时间转换(目前仅支持输出YYYY-MM-DD hh:mm:ss,功能待丰富)

参数
  • date 默认值为null;非必传;时间字符串或毫秒。
返回值
  • String YYYY-MM-DD hh:mm:ss
示例
    tools.parseDate(6156481580000) // 返回 2021-12-21 14:45:00
    tools.parseDate('2010-10-23') // 返回 2010-10-23 00:00:00
    tools.parseDate() // 返回 2021-09-30 16:48:35

getUrlParams()

    将当前url参数转换为json对象

参数
  • null
返回值
  • Object 转换后的参数对象
示例
    //假设当前url地址为 www.baidu.com?name=benboerba&age=12&sex=男
    getUrlParams() // 返回 {name:"benboerba",age:12,sex:"男"}

results matching ""

    No results matching ""