前端常用的函数

110 阅读1分钟

1、获取地址栏参数并返回json格式

function parseQuery (decode, hack) {
  var qs;
  if (hack) {
    qs = location.href.substring(location.href.indexOf('?') + 1);
  }
  else {
    qs = location.search.length > 0 ? location.search.substring(1) : '';
  }
  var args = {};
  var items = qs.length ? qs.split('&') : [];
  var name = null, value = null;
  items.forEach(function (item) {
    var itemPair = item.split('=');
    name = decode ? decodeURIComponent(itemPair[0]) : itemPair[0];
    value = decode ? decodeURIComponent(itemPair[1]) : itemPair[1];
    if (name)
      args[name] = value;
  });
  return args;
}

2、把json格式数据转换为可拼接到地址后面

function jointUrl(url, query) {
  query = query || {};
  var firstFlag = true;
  for (var key in query) {
    if (query.hasOwnProperty(key)) {
      if (firstFlag) {
        url += '?' + key + '=' + query[key];
        firstFlag = false;
      } else {
        url += '&' + key + '=' + query[key];
      }
    }
  }
  return url;
}
jointUrl("https://xxx.com", {id: 1})

3、小数点保留一位正则

/^(-[0-9]{0,3}|[0-9]{0,3})(\.[0-9])?$/

未完待续