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

相关文章

Nginx安全防护的多种方法

《Nginx安全防护的多种方法》在生产环境中,需要隐藏Nginx的版本号,以避免泄漏Nginx的版本,使攻击者不能针对特定版本进行攻击,下面就来介绍一下Nginx安全防护的方法,感兴趣的可以了解一下... 目录核心安全配置1.编译安装 Nginx2.隐藏版本号3.限制危险请求方法4.请求限制(CC攻击防御)

python生成随机唯一id的几种实现方法

《python生成随机唯一id的几种实现方法》在Python中生成随机唯一ID有多种方法,根据不同的需求场景可以选择最适合的方案,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习... 目录方法 1:使用 UUID 模块(推荐)方法 2:使用 Secrets 模块(安全敏感场景)方法

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

MyBatis-Plus通用中等、大量数据分批查询和处理方法

《MyBatis-Plus通用中等、大量数据分批查询和处理方法》文章介绍MyBatis-Plus分页查询处理,通过函数式接口与Lambda表达式实现通用逻辑,方法抽象但功能强大,建议扩展分批处理及流式... 目录函数式接口获取分页数据接口数据处理接口通用逻辑工具类使用方法简单查询自定义查询方法总结函数式接口

MySQL深分页进行性能优化的常见方法

《MySQL深分页进行性能优化的常见方法》在Web应用中,分页查询是数据库操作中的常见需求,然而,在面对大型数据集时,深分页(deeppagination)却成为了性能优化的一个挑战,在本文中,我们将... 目录引言:深分页,真的只是“翻页慢”那么简单吗?一、背景介绍二、深分页的性能问题三、业务场景分析四、

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Java中的数组与集合基本用法详解

《Java中的数组与集合基本用法详解》本文介绍了Java数组和集合框架的基础知识,数组部分涵盖了一维、二维及多维数组的声明、初始化、访问与遍历方法,以及Arrays类的常用操作,对Java数组与集合相... 目录一、Java数组基础1.1 数组结构概述1.2 一维数组1.2.1 声明与初始化1.2.2 访问

Java 方法重载Overload常见误区及注意事项

《Java方法重载Overload常见误区及注意事项》Java方法重载允许同一类中同名方法通过参数类型、数量、顺序差异实现功能扩展,提升代码灵活性,核心条件为参数列表不同,不涉及返回类型、访问修饰符... 目录Java 方法重载(Overload)详解一、方法重载的核心条件二、构成方法重载的具体情况三、不构