简单整理常见对数组字符串操作的封装

.移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组
console.log(move([2,3,4,5,6,11,1,1,1,1,1,1,4,5,6],1))
function move(arr,item) {
return arr.filter(function (arr) {
return arr !== item
})
}
查找数字类数组中最大值
    console.log(maxArr([1,2,3,4,5]))
function maxArr(arr) {
return Math.max.apply(null,arr)
}
查找数字类数组中最小值
    console.log(maxArr([1,2,3,4,5]))
function minArr(arr) {
return Math.max.apply(null,arr)
}
 
 
获取数组的随机一个数
        console.log(randomOne([1,2,3,4,5,6]))
function randomOne(arr) {
return arr[Math.floor(Math.random()*arr.length)];
}
 
 
/*
1:首字母大写
2:首字母小写
3:大小转换需要均匀分布两端
4:全部大写
5:全部大写
*/
function changeCase(str, type) {
switch (type){
case 1: return str.replace(/^(\w)(\w+)/,function (v,v1,v2,v3) {
console.log(v)//被匹配的数组
console.log(v1)//是第一个捕获组
console.log(v2)//是第二个捕获组
console.log(v3)//第一个被匹配的index
return v1.toUpperCase() + v2.toLowerCase();
});
case 2:return str.replace(/^(\w)(\w+)/,function (v,v1,v2,v3) {
console.log(v)//被匹配的数组
console.log(v1)//是第一个捕获组
console.log(v2)//是第二个捕获组
console.log(v3)//第一个被匹配的index
return v1.toLowerCase() + v2.toUpperCase();
});
case 3:return str.replace(/^([a-z]+)([A-Z]+)/,function (v,v1,v2,v3) {
console.log(v)//被匹配的数组
console.log(v1)//是第一个捕获组
console.log(v2)//是第二个捕获组
console.log(v3)//第一个被匹配的index
return v1.toUpperCase() + v2.toLowerCase();
});
case 4: return str.toUpperCase();
case 5: return str.toLowerCase();
}
}
console.log(changeCase("qweqweWEWREWDSFGDJJ",3))
 
 
字符串循环复制
function repeatStr(str,count) {
var text= "";
for(var i=0;i<count;i++){
text +=str
}
return text;
}
//检测字符串
function checkType(str,type) {
switch(type){
case "email":
return /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(str);
case "phone":
return /^1[3|4|5|7|8][0-9]{9}$/.test(str);
case "tel":
return /^(0\d{2,3}-\d{7,8})(-\d{1,4})?$/.test(str);
case "numer":
return /[^0-9]$/.test(str);
case "numerAll":
return /[0-9]$/.test(str);
case "english":
return /^[a-zA-Z]+$/.test(str);
case "chinese":
return /^[\u4E00-\u9FA5]+$/.test(str);
case "lower":
return /^[a-z]+$/.test(str);
case "upper":
return /^[A-Z]+$/.test(str);

}
}
 
 

///检测密码强度
function checkpwd(str){
var nowLv=0;
if (str.length<6){
return nowLv;
}
if (/[0-9]/.test(str)){
nowLv++
}
if(/[a-z]/.test(str)){
nowLv++
}
if (/[A-Z]/.test(str)){
nowLv++
}
if (/[\.|-|_]/.test(str)){
nowLv++
}
return nowLv
}
Math.random()输出0到1(包括0,不包含1)的随机数。

toString(16)将随机数转换为16进制的字符串。
substring(2)截取字符串,因为随机数大于等于0小于1,前两位是“0.”,substring(2)从第三位开始截取到最后。

function randomNumber(count) {
return Math.random().toString(count).substring(5);
}
 
  
///查找字符串出现重复的字符串返回次数
function countStr(str,strSplit) {
return str.split(strSplit).length-1;

}
/ES6简便的去重的方法
function removeRepeatArray(arr) {
return Array.from(new Set(arr))
}
    //返回数组(字符串)一个元素出现的次数
function getEleCount(obj,ele){
var num=0;
for(var i=0,len=obj.length;i<len;i++){
if (obj[i] ===ele){
num++
}
}
}
 
  
///返回数组出现的元素和次数
rank是最后排好序列展示的个数,ranktype为1 生序显示
function getCount(arr,rank,ranktype) {
var obj={},k,arr1=[];
//记录每一元素出现的次数
for(var i=0,len=arr.length;i<len;i++){
k=arr[i];
console.log(obj[k])
if(obj[k]){
obj[k]++;
}else {
obj[k]=1;
}
}
//保存结果 el-元素,count-出现次数
for(var o in obj){
arr1.push({el:o,count:obj[o]});
}
//排序(降序)
arr1.sort(function (n1,n2) {
return n2.count - n1.count
})
//如果ranktype为1则为生序,反转数据
if (ranktype===1){
arr1=arr1.reverse();
}
var rank1=rank || arr1.length;
return arr1.slice(0,rank1)

}
 
  
//检测对象是否有哪个类名
// /\s+/ 匹配任何空白符,包括\n,\r,\f,\t,\v等(换行、回车、空格、tab等)


var ww=document.getElementsByClassName('qq')
function hasClass(obj,calssStr) {
//把字符串转换成数组
var arr=obj.className.split(/\s+/);
console.log(arr)
return (arr.indexOf(calssStr)==-1)?false:true
}
//随机生成颜色
function randomColor(){

return "rgba(" + randomNumber(255) + ',' + randomNumber(255) + "," + randomNumber(255);
}

转载于:https://www.cnblogs.com/city1995/p/7248810.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
疫情居家办公系统管理系统按照操作主体分为管理员和用户。管理员的功能包括办公设备管理、部门信息管理、字典管理、公告信息管理、请假信息管理、签到信息管理、留言管理、外出报备管理、薪资管理、用户管理、公司资料管理、管理员管理。用户的功能等。该系统采用了MySQL数据库,Java语言,Spring Boot框架等技术进行编程实现。 疫情居家办公系统管理系统可以提高疫情居家办公系统信息管理问题的解决效率,优化疫情居家办公系统信息处理流程,保证疫情居家办公系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理疫情居家办公系统信息,包括外出报备管理,培训管理,签到管理,薪资管理等,可以管理公告。 外出报备管理界面,管理员在外出报备管理界面中可以对界面中显示,可以对外出报备信息的外出报备状态进行查看,可以添加新的外出报备信息等。签到管理界面,管理员在签到管理界面中查看签到种类信息,签到描述信息,新增签到信息等。公告管理界面,管理员在公告管理界面中新增公告,可以删除公告。公告类型管理界面,管理员在公告类型管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值