過濾鏈接的參數 urlFilter - 戴向天

大家好!我叫戴向天,今天跟大家分享一個關於網絡鏈接參數的操作,獲取 || 過濾

QQ羣:602504799

QQ:809002582

詳情的代碼內容如下↓↓↓

// 獲取鏈接上的所有參數,返回的是一個Object
function getUrlParams(url) {
  const params = url.split("?")[1];
  const reg = /&?([^&]+)/g;
  let res = null;
  const map = Object.create(null);
  while (res = reg.exec(params)) {
    const paramEntry = res[1].split("=");
    map[paramEntry[0]] = paramEntry[1];
  }
  return map;
}

// 獲取鏈接上的參數,並且返回一個新的鏈接
function urlFilter(url, arr) {
  let urlParams= getUrlParams(url);
  for (let i in arr) delete urlParams[arr[i]];
  url = url.indexOf("?") >= 0 ? url.split("?")[0] + "?" : url + '?';
  for (let p in urlParams) if (p && urlParams[p]) url += p + "=" + urlParams[p] + "&";
  return url
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章