最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS數(shù)據(jù)分析數(shù)據(jù)去重及參數(shù)序列化示例

 更新時間:2022年08月16日 16:06:59   作者:丟丟哥  
這篇文章主要為大家介紹了JS數(shù)據(jù)分析數(shù)據(jù)去重及參數(shù)序列化示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

列表去重

使用 Set 數(shù)據(jù)結構

const set = new Set([2, 8, 3, 8, 5])

注:Set 數(shù)據(jù)結構認為對象永不相等,即使是兩個空對象,在 Set 結構內(nèi)部也是不等的

方法封裝

const uniqueness = (data, key) => {
  const hash = new Map()
  return data.filter(item => !hash.has(item[key]) && hash.set(item[key], 1))
}

對象轉為查詢字符串

代碼注釋

/**
* @description: 對象轉為查詢字符串
* @params {Object} data: 源數(shù)據(jù)
* @return {String} 目標數(shù)據(jù)
* @example
*
*   serialize({ a: 1, b: 2 })
*   
*   a=1&b=2
*/

方法封裝

export const serialize = data => {
  return Object.keys(data).map(key => `${encodeURIComponent(key)}=${encodeURIComponent(data[key])}`).join('&')
}

獲取查詢參數(shù)

代碼注釋

/**
* @description: 獲取查詢參數(shù)
* @params {String} name: 查詢參數(shù)名稱
* @return {String} 目標數(shù)據(jù)
* @example
*
*   getQueryString('id')
*/

方法封裝

export const getQueryString = key => {
  return (new URLSearchParams(location.search)).get(key)
}

擴展封裝

class Route {
  static url = new URL(location)
  static attr(attribute) {
    return this.url[attribute]
  }
  static getParams() {
    const { searchParams } = this.url, params = {}
    for (const [key, value] of searchParams.entries()) {
      params[key] = value
    }
    return params
  }
  static getParam(name) {
    const { searchParams } = this.url
    return searchParams.get(name)
  }
  static hasParam(name) {
    const { searchParams } = this.url
    return searchParams.has(name)
  }
}

以上就是JS數(shù)據(jù)分析數(shù)據(jù)去重及參數(shù)序列化示例的詳細內(nèi)容,更多關于JS數(shù)據(jù)去重參數(shù)序列化的資料請關注腳本之家其它相關文章!

相關文章

最新評論

武邑县| 武汉市| 叙永县| 岚皋县| 天峻县| 伊川县| 武穴市| 怀集县| 永春县| 星座| 弥渡县| 栾城县| 嘉善县| 永春县| 巨野县| 红河县| 黄大仙区| 临城县| 巢湖市| 巫山县| 嘉峪关市| 宁国市| 奉节县| 阜平县| 诸城市| 兖州市| 普定县| 克拉玛依市| 义马市| 沛县| 洛宁县| 饶河县| 武城县| 云阳县| 枝江市| 北票市| 报价| 南丹县| 五华县| 望江县| 伊金霍洛旗|