封装获取URL中params的值

2022-12-15 17:27:47 浏览数 (1)

utils

代码语言:javascript复制
const str = "http:www.baidu.com?name=swt&age=80&heigth=200"

function get(key) {
  //获取?位置的索引
  let index = str.indexOf('?');
  //截取?后面的内容
  let data = str.substr(index   1);
  //let data = str.slice(index   1);
  //将字符串分割成数组
  let dataArray = data.split('&');

  //第一种方案 循环遍历
  for(let i = 0; i < dataArray.length; i  ) {
    let newArr = dataArray[i].split('=');
    if(newArr[0] == key) {
      return newArr[1]
    }
  }

  //第二种方案 for of遍历
  for( k of dataArray) {
    let newArr = k.split('=');
    if(newArr[0] == key) {
      return newArr[1]
    }
  }

  //第三种方案
  let arr = []
  dataArray.forEach((item, index) => {
    arr = item.split('=');
  })
  if(arr[0] == key) {
    return arr[1]
  }

}

console.log(get('name'), get('age'), get('height')) //swt 80 200
url

0 人点赞