提取url参数
const getParams = (url) => {
let obj = {};
if(url.indexOf('?') == -1) return obj;
url.replace(/([^?&=]+)=([^?&=#]*)/g, (val, $1, $2) => {
var key = decodeURIComponent($1);
var value = decodeURIComponent($2);
obj[key] = value;
return val;
})
return obj;
}
getParams('https://nowcoder.com/online?id=1&salas=1000')
数组扁平化
const flatten = arr => {
return arr.toString().split(',').map(item => Number(item));
}
判断质数
Number.prototype._isPrime = function(number) {
if(number < 2) {
return true;
}
for(var i = 2;i<Math.sqrt(number);i++) {
if(number % i === 0) {
return false;
}
}
return true;
}
时间格式化
function formatDate(oDate, sFormation) {
var add0 = function(num){
if(num<10)
return 0+""+num;
else
return num;
}
var o = {
"yyyy":oDate.getFullYear(),
"yy":oDate.getFullYear()%100,
"MM":add0(oDate.getMonth()+1),
"M":oDate.getMonth()+1,
"dd":add0(oDate.getDate()),
"d":oDate.getDate(),
"HH":add0(oDate.getHours()),
"H":oDate.getHours(),
"hh":add0(oDate.getHours()%12),
"h":oDate.getHours()%12,
"mm":add0(oDate.getMinutes()),
"m":oDate.getMinutes(),
"ss":add0(oDate.getSeconds()),
"s":oDate.getSeconds(),
"w":function(){
var day = ["日","一","二","三","四","五","六"];
return day[oDate.getDay()];
}(),
}
for(var k in o){
sFormation = sFormation.replace(k,o[k]);
}
return sFormation;
}
邮箱正则
function isAvailableEmail(sEmail) {
var pattern = /^[\da-z]+[\w\.-]?[\da-z]+@[a-z\d]+[\w\.-]?[a-z\d]+\.[a-z\d]{2,}$/i;
return pattern.test(sEmail);
}
乘法 小数
function multiply (a, b) {
var f1 = 1, f2 = 1;
if (String(a).indexOf(".") != -1) {
f1 = String(a).length - String(a).indexOf(".") + 1
f1 = Math.pow(10, f1)
a = a * f1
}
if (String(b).indexOf(".") != -1) {
f2 = String(b).length - (String(b).indexOf(".") + 1)
f2 = Math.pow(10, f2)
b = b * f2
}
return a * b / f1 / f2
}
颜色值rgb转换16
function rgb2hex(sRGB) {
var regexp=/rgb\((\d+),\s*(\d+),\s*(\d+)\)/;
var ret=sRGB.match(regexp);
if(!ret){
return sRGB;
}else{
var str='#';
for(var i=1;i<=3;i++){
var m=parseInt(ret[i]);
if(m<=255&&m>=0){
str+=(m<16?'0'+m.toString(16):m.toString(16));
}else{
return sRGB;
}
}
return str;
}
}