// 获取http传递的参数
export const getRequest = ()=>{
  var url = location.search; //获取url中"?"符后的字串
  var theRequest = new Object();
  if (url.indexOf("?") != -1) {
    let str = url.substr(1);
    let strs = str.split("&");
    for(var i = 0; i < strs.length; i ++) {
      theRequest[strs[i].split("=")[0]]=(strs[i].split("=")[1]);
    }
  }
  return theRequest;
}

// 获取hash 传递参数
export const getHashReq = ()=>{
  let reqParams = {};
  let req = location.hash.split("?")[1];
  req = req.split('&')
  for(let i = 0 ;i<req.length;i++){
    let reqUnit = req[i].split('=');
    let key = reqUnit[0];
    let val = reqUnit[1];
    reqParams[key] = val;
  }
  return reqParams ;
}

// 设置cookie
export const setCookie = (c_name,value,expTime)=>{
  var exdate = new Date();
  exdate.setTime(exdate.getTime() + expTime *3600 * 1000);
  document.cookie= c_name + "=" + escape(value)+((expTime==null) ? "" : ";expires="+exdate.toGMTString());
}
// 读取cookie
export const getCookie = (c_name) => {
  if (document.cookie.length>0) {
    var c_start=document.cookie.indexOf(c_name + "=");
    if (c_start!=-1) {
      c_start=c_start + c_name.length+1;
      var c_end=document.cookie.indexOf(";",c_start);
      if (c_end==-1)
        c_end = document.cookie.length
        return unescape(document.cookie.substring(c_start, c_end))
      }
    }
  return ""
}
// 删除cookie
export const delCookie = (c_name)=>{
  var exp = new Date();
  exp.setTime(exp.getTime() - 1);
  var cval = getCookie(c_name);
  if(cval!=null){
    document.cookie = c_name + "=" + cval + ";expires=" + exp.toGMTString();
  }
}

// 对象转 quary
const trans = query => {
  let ret = ''
  for (let it in query) {
    ret += encodeURIComponent(it) + '=' + encodeURIComponent(params[it]) + '&'
  }
  return ret ;
}

开发常用js代码段的更多相关文章

  1. 《超实用的Node.js代码段》连载三:Node.js深受欢迎的六大原因

    <超实用的Node.js代码段>连载一:获取Buffer对象字节长度 <超实用的Node.js代码段>连载二:正确拼接Buffer Node.js是一种后起的优秀服务器编程语言 ...

  2. 我们为什么要看《超实用的Node.JS代码段》

    不知道自己Node.JS水平如何?看这张图 如果一半以上的你都不会,必须看这本书,一线工程师用代码和功能页面来告诉你每一个技巧点. 都会一点,但不知道如何检验自己,看看本书提供的面试题: 1.     ...

  3. 常用JS代码片段

    1.隐藏部分数字,如手机号码,身份证号码 1 2 3 function (str,start,length,mask_char){ return str.replace(str.substr(star ...

  4. js/jquery/html前端开发常用到代码片段

    1.IE条件注释 条件注释简介 IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法.条件注释只能用于IE5以上,IE ...

  5. [总结]web前端常用JavaScript代码段及知识点集锦

    DOM相关 判断浏览器是否支持placeholder属性 function placeholderSupport() { return 'placeholder' in document.create ...

  6. 常用js代码整理、收集

    个人整理了一下个人常用到的一些js代码,以方便学习以及日后使用,或许有一些是个人之前从网上摘下来的,但是不记得是具体从哪里来的了,如果你看到有一段代码跟你的文章很相似甚至一样,请不要气愤,请告诉我,我 ...

  7. 超实用 JS 代码段笔记(一)

    序1:30段简单代码段(有删减) 1 . 区分 IE 和 非 IE 浏览器 if(!+[1,]){ console.log('ie浏览器'); }else{ console.log('非ie浏览器') ...

  8. 站长常用的200个js代码 站长常用js代码大全 站长常用js代码集合

    站长常用的200个js代码 1.文本框焦点问题 onBlur:当失去输入焦点后产生该事件 onFocus:当输入获得焦点后,产生该文件 Onchange:当文字值改变时,产生该事件 Onselect: ...

  9. 实用的JS代码段(表单篇)

    整理了下比较实用的Javascript代码段,完整的代码参考 1 多个window.onload方法 由于onload方法时在页面加载完成后,自动调用的.因此被广泛的使用,但是弊端是只能实用onloa ...

随机推荐

  1. a标签的href和onclick

    1.链接的onclick事件被先执行,href的事件后执行 2.就今天遇到的问题说一下,通过a标签的onclick事件实现点击后定位到指定的div,或者是执行其他函数(比如弹出artdialog等), ...

  2. flannel源码分析---初始化部分

    // main.go 1.func main() ..... 首先调用sm, err := newSubnetManager()创建subnet manager .... 调用ctx, cancel ...

  3. 使用win32ole进行页面加载和跳转

    require "win32ole" #包含库 ie = WIN32OLE.new('internetExplorer.Application') ie.visible = tru ...

  4. 实现num1、num2交换,无中间变量

    num1=num1+num2; num2=num1-num2; num1=num1-num2;

  5. 【转】记一次SQLServer的分页优化兼谈谈使用Row_Number()分页存在的问题

      最近有项目反应,在服务器CPU使用较高的时候,我们的事件查询页面非常的慢,查询几条记录竟然要4分钟甚至更长,而且在翻第二页的时候也是要这么多的时间,这肯定是不能接受的,也是让现场用SQLServe ...

  6. windows7下RabbitMQ的安装

    一.下载资源 Rabbit MQ 是建立在强大的Erlang OTP平台上,因此安装Rabbit MQ的前提是安装Erlang.(在官网自行选择版本) 1.otp_win64_20.2.exe 下载地 ...

  7. C#多线程同步案例实操

    好久没有写博客了,为了养成学习的习惯,培养积极年轻的心态,又回到了博客园这个平台继续撸起时隔多年未光顾的空间. 项目需求: 实现一个简单的获取始发目的耗时.距离,将结果输出表格. 方案思路: 通过多线 ...

  8. linux系统下nginx安装目录和nginx.conf配置文件目录

    linux系统下nginx安装目录和nginx.conf配置文件目录 1.查看nginx安装目录 输入命令 # ps  -ef | grep nginx 返回结果包含安装目录 root      26 ...

  9. StrobeMediaPlayback的Javascript桥接

    StrobeMediaPlayback是Adobe官方出的流媒体播放器,支持RTMP协议,在项目中运用到了,却在网上怎么都找不到相关资料,可以说是寥寥无几. 无奈之下,稍微看了点源代码,对播放器与JS ...

  10. 吴超老师课程--Pig的介绍和安装

    1.Pig是基于hadoop的一个数据处理的框架.  MapReduce是使用java进行开发的,Pig有一套自己的数据处理语言,Pig的数据处理过程要转化为MR来运行. 2.Pig的数据处理语言是数 ...