js 数组、时间、邮箱等处理方法 阿星小栈

2024-05-09 20:38

本文主要是介绍js 数组、时间、邮箱等处理方法 阿星小栈,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

//判断数据是否在另一数组
util.inOf = function (arr, targetArr) {let res = true;arr.forEach(item => {if (targetArr.indexOf(item) < 0) {res = false;}});return res;
};
//判断元素是否在数组内
util.oneOf = function (ele, targetArr) {if (targetArr.indexOf(ele) >= 0) {return true;} else {return false;}
};
//判断元素是否在数组内 二
util.contains = function (arr, el) {if (!Array.indexOf) {Array.prototype.indexOf = function (obj) {for (var i = 0; i < this.length; i++) {if (this[i] == obj) {return i;}}return -1;}}if(arr.indexOf(el) < 0){return false;}else{console.log('arr.indexOf(obj)',arr.indexOf(el))return true;}
};
//获取窗口高度
util.getModalInitHeight = function () {return window.innerHeight;
}
//获取窗口宽度
util.innerWidth = function () {return window.innerWidth;
}
//转化日期格式为标准格式
util.convertTimeTextFormat = function (dateText) {let date = Date.parse(dateText);let datetime = new Date(date);let result = datetime.getFullYear() + '-' + ((datetime.getMonth() + 1) >= 10 ? (datetime.getMonth() + 1) : '0' +(datetime.getMonth() + 1)) + '-' + (datetime.getDate() < 10 ? '0' + datetime.getDate() : datetime.getDate()) + ' ' +(datetime.getHours() < 10 ? '0' + datetime.getHours() : datetime.getHours()) + ':' +(datetime.getMinutes() < 10 ? '0' + datetime.getMinutes() : datetime.getMinutes()) +':' + (datetime.getSeconds() < 10 ? '0' + datetime.getSeconds() : datetime.getSeconds());return result;
};
//转化多个时间为标准格式
util.convertTimeSlotFormat = function (timeslot) {let result = [];for(let i=0;i<timeslot.length;i++){if(timeslot[i]){let date = Date.parse(timeslot[i]);let datetime = new Date(date);let text = datetime.getFullYear() + '-' + ((datetime.getMonth() + 1) >= 10 ? (datetime.getMonth() + 1) : '0' +(datetime.getMonth() + 1)) + '-' + (datetime.getDate() < 10 ? '0' + datetime.getDate() : datetime.getDate()) + ' ' +(datetime.getHours() < 10 ? '0' + datetime.getHours() : datetime.getHours()) + ':' +(datetime.getMinutes() < 10 ? '0' + datetime.getMinutes() : datetime.getMinutes()) +':' + (datetime.getSeconds() < 10 ? '0' + datetime.getSeconds() : datetime.getSeconds());if(text.length>0){result.push(text);} }}return result;
};
//时间戳转化为自定义格式时间格式   (util.convertTimeTextCustomFormat('yyyy-MM-dd hh:mm:ss','2018-05-19'
util.formatTimestamp = function (fmt, timestamp) {let date = new Date(timestamp);let o = {   "M+" : date.getMonth()+1,                 //月份   "d+" : date.getDate(),                    //"h+" : date.getHours(),                   //小时   "m+" : date.getMinutes(),                 //"s+" : date.getSeconds(),                 //"q+" : Math.floor((date.getMonth()+3)/3), //季度   "S"  : date.getMilliseconds()             //毫秒   
      };   if(/(y+)/.test(fmt))   fmt=fmt.replace(RegExp.$1, (date.getFullYear()+"").substr(4 - RegExp.$1.length));   for(var k in o)   if(new RegExp("("+ k +")").test(fmt))   fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));   return fmt;
}
// 过滤字符、标签、空格及符号
util.newLine = function (str) {return str.replace(/\n/g, '<br/>')
}
// 传入参数小于10,前面加'0'
util.checkNum = function (n) {return n = n < 10 ? '0' + n : n
}// 获取url参数
util.getUrlParam = function (name) {var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // 构造一个含有目标参数的正则表达式对象var r = window.location.search.substr(1).match(reg); // 匹配目标参数if (r != null) {return unescape(r[2]);}return null; //返回参数值
}// 判断是否IP
util.isIp = (ip) => {var reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/return reg.test(ip);
}
//数组去重
util.unique = function (arr){var len = arr.length;var result = []for(var i=0;i<len;i++){var flag = true;for(var j = i;j<arr.length-1;j++){if(arr[i]==arr[j+1]){flag = false;break;}}if(flag){result.push(arr[i])}}return result;
}
//获取数组最大值或者最小值
util.getMaximin = function (arr, maximin) {if(maximin == "max"){return Math.max.apply(Math,arr);}else if(maximin == "min"){return Math.min.apply(Math, arr); }
};
//邮箱验证
util.checkEmail = function (email) {let emailReg = new RegExp('^([0-9A-Za-z\\-_\\.]+)@([0-9a-z]+\\.[a-z]{2,3}(\\.[a-z]{2})?)$');if (email === '') {return false;console.log('不能为空');} else if (!emailReg.test(email)) { // 正则验证不通过,格式不对return false;console.log('格式不正确');} else {return true;console.log('正确');}
};
//数组分割成字符串用自定义符号连接
util.implode = function (glus, arr) {let str = '';for (let i = 0; i < arr.length; i++) {if (i === 0) {str += arr[i];} else {str += glus + arr[i];}}return str;
};

 

 

多个项目总结!!!!!!!!

这篇关于js 数组、时间、邮箱等处理方法 阿星小栈的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/974446

相关文章

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON:

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

SQL Server安装时候没有中文选项的解决方法

《SQLServer安装时候没有中文选项的解决方法》用户安装SQLServer时界面全英文,无中文选项,通过修改安装设置中的国家或地区为中文中国,重启安装程序后界面恢复中文,解决了问题,对SQLSe... 你是不是在安装SQL Server时候发现安装界面和别人不同,并且无论如何都没有中文选项?这个问题也

Java Thread中join方法使用举例详解

《JavaThread中join方法使用举例详解》JavaThread中join()方法主要是让调用改方法的thread完成run方法里面的东西后,在执行join()方法后面的代码,这篇文章主要介绍... 目录前言1.join()方法的定义和作用2.join()方法的三个重载版本3.join()方法的工作原

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取

Python实现批量提取BLF文件时间戳

《Python实现批量提取BLF文件时间戳》BLF(BinaryLoggingFormat)作为Vector公司推出的CAN总线数据记录格式,被广泛用于存储车辆通信数据,本文将使用Python轻松提取... 目录一、为什么需要批量处理 BLF 文件二、核心代码解析:从文件遍历到数据导出1. 环境准备与依赖库

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

在MySQL中实现冷热数据分离的方法及使用场景底层原理解析

《在MySQL中实现冷热数据分离的方法及使用场景底层原理解析》MySQL冷热数据分离通过分表/分区策略、数据归档和索引优化,将频繁访问的热数据与冷数据分开存储,提升查询效率并降低存储成本,适用于高并发... 目录实现冷热数据分离1. 分表策略2. 使用分区表3. 数据归档与迁移在mysql中实现冷热数据分