下面介绍一下那些前端比较常用的函数:
- 随机数(在指定范围内)
function randoms(max,min){
if(min===undefined) min=0;
return Math.floor(Math.random()*(max-min)+min);
}
randoms(10,2); //8
可以随机到指定范围的数字
- 随机颜色
function randomColor(){
var col="#";
for(var i=0;i<6;i++){
col+=this.randoms(16).toString(16);
}
return col;
}
当我们想要一个随机色彩时,直接调用该函数,就可以得到想要的结果。
- 生成四位数验证码(随机生成)
function verificationCode(){
var arr = [];
for(var i = 48;i<123;i++){
if(i>57 && i<65){
continue;
i = 64;
}
if(i>90 && i<97){
continue;
i = 96;
}
arr.push(String.fromCharCode(i)); //String.fromCharCode(46) 将编码转换为字符串
}
arr = arr.sort(function(){
return Math.random()-0.5;
})
arr.length = 4;
str = arr.join("");
// res.innerHTML=str.toLowerCase(); //将字符串的大写转换为小写
// res.innerHTML = str.toUpperCase(); //将字符串中的所有小写字母转换为大写字母
return str;
}
有的网站上登录需要设计验证码,但是你又不想写了,正好这个函数出现了,完美解决你的问题。
- 获取浏览器的名称以及版本(可以解决浏览器的兼容问题)
function getBrowserRV(){
var str=navigator.userAgent;
// 判断是否是Chrome
if(str.indexOf("Chrome")>-1){
var index=str.indexOf("Chrome");
return str.slice(index,str.indexOf(" ",index+1)).split("/");
}
// 判断是否是Firefox
if(str.indexOf("Firefox")>-1){
var index=str.indexOf("Firefox");
return str.slice(index).split("/");
}
// 判断是否是IE11
if(str.indexOf("rv:")>-1 && str.indexOf("Trident")>-1){
return ["IE","11"];
}
// 判断是否是IE10及以下
if(str.indexOf("Trident")>-1){
var index=str.indexOf("MSIE");
return ["IE",str.slice(index,str.indexOf(";",index)).split(" ")[1]];
}
}
前端设计时,最最最最讨厌的就是解决浏览器兼容问题,这个函数可以帮助你获取到对应的浏览器版本,能够快速的解决“烦人“”的IE8.
- 获取地址栏上的参数(有时候我们会利用地址栏传递参数,又想获取,又不想操作,正好这个函数能够满足你的想法)
function queryString(values){
var arr = location.search.slice(1).split("&");
arr = arr.map((item)=>(
{key:item.split("=")[0],
value:item.split("=")[1]}));
var str = arr.filter(({key})=>key == values);
return str ? str[0].value : '';
}
上面函数能够获取到地址栏上的所有数据,操作简单。