1. 获取url问号后面,name的值

/**
* *?id=123&a=b
* @return object
*/
export function urlParse(){
let url = window.location.search;
let obj = {};
let reg =/[?&][^?&]+=[^&]+/g;
let Arr = url.match(reg);
if(Arr){
Arr.forEach((item)=>{
let temArr = item.substring(1).split('=');
let key = decodeURIComponent(temArr[0]);
let value = decodeURIComponent(temArr[1]);
obj[key] = value;
});
}
return obj;
};

2. 存储商家id 以及读取 id

/**
* 存储商家id
*/
// 保存此 id
export function saveToLocal(id,key,value){
let seller = window.localStorage.sellerArr;
// 判断是否有本地存储
// 无 则创建 sellerArr 对象 创建 id的 对象
// 有 检查是否存在此id的属性 没有此属性则 创建此 id 的对象
if(!seller){
seller = {};
seller[id] = {};
}else{
seller = JSON.parse(seller);
// 查找是否存在 id 不存在继续添加属性
if(!seller[id]){
// 创建对象
seller[id] = {};
}
};
seller[id][key] =value;
window.localStorage.sellerArr = JSON.stringify(seller);
};
// 读取此 id
export function loadFromLocal(id,key,def){
let seller = window.localStorage.sellerArr;
// 判断是否有本地存储
if(!seller){
return def;
};
// 判断当前 id 是否存在
seller = JSON.parse(seller)[id];
if(!seller){
return def;
}
// 读取 bool
let ret = seller[key];
return ret || def ;
};

3.日期转化

export function formateDater(date,fmt){
//找到y+ 替换y+
if(/(y+)/.test(fmt)){
//console.log(RegExp.$1);
fmt = fmt.replace(RegExp.$1,date.getFullYear()+'');
};
let o ={
'M+' : date.getMonth()+1,
'd+' : date.getDate(),
'h+' : date.getHours(),
'm+' : date.getMinutes(),
's+' : date.getSeconds()
}
console.log(o);
for(let k in o){
if(new RegExp(`(${k})`).test(fmt)){
let str = o[k] + '' ;
fmt = fmt.replace(RegExp.$1,str);
}
};
return fmt;
}

4.dom操作

//判断是否有class
export function hasClass(el, className) {
let reg = new RegExp('(^|\\s)' + className + '(\\s|$)');
return reg.test(el.className);
}

//添加class
export function addClass(el, className) {
if (hasClass(el, className)) {
return;
}

let newClass = el.className.split(' ');
newClass.push(className);
el.className = newClass.join(' ');
}

//移除class
export function removeClass(el, className) {
if (!hasClass(el, className)) {
return
}
let newClass = el.className.split(' ');
newClass = newClass.splice(className,1);
el.className = newClass.join(' ');
}

//设置 /获取 自定义data- 属性的值
export function getData(el, name, val) {
const prefix = 'data-'
if (val) {
return el.setAttribute(prefix + name, val)
}
return el.getAttribute(prefix + name)
}

// 获取 n天后的 时间
function GetDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate()+AddDayCount);//获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = (dd.getMonth()+1)<10?"0"+(dd.getMonth()+1):(dd.getMonth()+1);//获取当前月份的日期,不足10补0
var d = dd.getDate()<10?"0"+dd.getDate():dd.getDate();//获取当前几号,不足10补0
return y+"-"+m+"-"+d;
//return d+'/'+m+'/'+y
}

最新文章

  1. 【CentOS】文件与目录管理
  2. Oracle存储过程动态创建临时表/存储过程执行权限问题--AUTHID CURRENT_USER
  3. Android实现Layout缩放动画
  4. Android怎么找到最优适配资源
  5. Mysql 的存储引擎,myisam和innodb的区别
  6. C#让TopMost窗体弹出并置顶层但不获取当前输入焦点的终极办法
  7. linux下如何安装rzsz
  8. 【转】Mysql 根据时间戳按年月日分组统计
  9. Linux less命令详解
  10. 【机器学习实战】Machine Learning in Action 代码 视频 项目案例
  11. 破解idea地址
  12. 预热ASP.NET MVC 的View
  13. D1 java概述
  14. 苹果电脑python3安装pillow模块
  15. C#概念总结(五)
  16. 1.尽量以const ,enum,inline替换define
  17. 20155237 第十一周java课堂程序
  18. 20155301 Exp6 信息搜集与漏洞扫描
  19. QQ名片自动点赞
  20. 掌握Markdown

热门文章

  1. noi.openjudge 1.12.6
  2. (基础)codeVs2235 机票打折
  3. 这3周以来的面试总结(C#/.net 智能硬件/物联网)
  4. qml Loader异步导致ComBoBox数据乱序
  5. CodeForces1051E EXKMP + 线段树dp
  6. fiddler模拟返回
  7. Java通过Mybatis实现批量插入数据到Oracle中
  8. SVN简单的使用
  9. Mybatis笔记三:全局配置文件
  10. MyBatis-获取 SqlSession