暂存一些常用js函数
获取url参数名
function GetQueryString(name) {
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r!=null) {
return unescape(r[2]);
} else {
return null;
}
}
用法:
- input:参数名
- output: url参数值,如果没有则返回null
修改url参数值
function changeURLArg(arg,arg_val){
var url = location.search;
var pattern = arg+'=([^&]*)';
var replaceText = arg + '=' + arg_val;
if(url.match(pattern)) {
var tmp = '/(' + arg + '=)([^&]*)/gi';
tmp = url.replace(eval(tmp), replaceText);
return tmp;
}else{
if(url.match('[\?]')) {
return url + '&'+replaceText;
} else {
return url + '?'+replaceText;
}
}
return url + '\n'+arg+'\n'+arg_val;
}
用法:
- input:参数名,修改值
- output: 所有参数的字符串
判断是否为数字
function isInteger(str) {
var regu = /^[-]{0,1}[0-9]{1,}$/;
return regu.test(str);
}
用法:
- input:带判断字符串
- output: ture or false
为元素添加class(js原生)
export function addClass (el, className) {
if (hasClass(el, className)) {
return
}
let newClass = el.className.split(' ')
newClass.push(className)
el.className = newClass.join(' ')
}
用法:
- input:el 元素, className 待添加类名
- output: 无
判断元素是否已有该class(js原生)
export function hasClass (el, className) {
let reg = new RegExp('(^|\\s)' + className + '(\\s|$)')
return reg.test(el.className)
}
用法:
- input:el 元素, className 类名
- output: true or false