1、清除空格
function removeSpace(value){
return value.replace(/\s+/g,"")
}
2、数组去重
function dedupe(array){
return Array.from(new Set(array))
}
3、对象去重
function dedupeObject(obj) {
var uniques = [];
var stringify = {};
for (var i = 0; i < obj.length; i++) {
var keys = Object.keys(obj[i]);
keys.sort(function(a, b) {
return (Number(a) - Number(b));
});
var str = '';
for (var j = 0; j < keys.length; j++) {
str += JSON.stringify(keys[j]);
str += JSON.stringify(obj[i][keys[j]]);
}
if (!stringify.hasOwnProperty(str)) {
uniques.push(obj[i]);
stringify[str] = true;
}
}
uniques = uniques;
return uniques;
}
4、获取元素属性
function getProperty(el,name,val){
const prefix = 'data-'
name = prefix + name
if(val){
return el.setAttribute(name,val)
}else{
return el.getAttribute(name)
}
}
5、判断是否已存在class
function hasClass(el,className){
let reg = new RegExp('(^|\\s)' + className + '(\\s|$)')
return reg.test(el.className)
}
6、添加class
function addClass(el,className){
if(hasClass(el,className)){
return
}
let newClass = el.className.split(' ')
newClass.push(className)
el.className = newClass.join(' ')
}
7、js正则格式化千分位
function format (num) {
return (num+ '').replace(/(\d{1,3})(?=(\d{3})+(?:$|\.))/g,'$1,');
}