Appearance
工具函数
数组去重
js
export const uniqueArray = (arr) => {
return Array.from(new Set(arr));
};
export const uniqueArray = (arr) => {
return Array.from(new Set(arr));
};
数组扁平化
js
export const flattenArray = (arr) => {
return arr.reduce((acc, val) => Array.isArray(val) ? acc.concat(flattenArray(val)) : acc.concat(val), []);
};
export const flattenArray = (arr) => {
return arr.reduce((acc, val) => Array.isArray(val) ? acc.concat(flattenArray(val)) : acc.concat(val), []);
};
截断字符串
js
export const truncateString = (str, maxLength) => {
if (str.length > maxLength) {
return str.substring(0, maxLength) + '...';
}
return str;
};
export const truncateString = (str, maxLength) => {
if (str.length > maxLength) {
return str.substring(0, maxLength) + '...';
}
return str;
};
反转字符串
js
export const reverseString = (str) => {
return str.split('').reverse().join('');
};
export const reverseString = (str) => {
return str.split('').reverse().join('');
};
验证邮箱格式
js
export const validateEmail = (email) => {
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return emailRegex.test(email);
};
export const validateEmail = (email) => {
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return emailRegex.test(email);
};
验证手机号格式
js
export const validateMobile = (mobile) => {
const mobileRegex = /^1[3-9]\d{9}$/;
return mobileRegex.test(mobile);
};
export const validateMobile = (mobile) => {
const mobileRegex = /^1[3-9]\d{9}$/;
return mobileRegex.test(mobile);
};
验证密码格式
js
export const validatePassword = (password) => {
const passwordRegex = /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$/;
return passwordRegex.test(password);
};
export const validatePassword = (password) => {
const passwordRegex = /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$/;
return passwordRegex.test(password);
};
验证身份证号码
js
export const validateIdCard = (idCard) => {
const idCardRegex18 = /^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[0-9Xx]$/;
const idCardRegex15 = /^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/;
return idCardRegex18.test(idCard) || idCardRegex15.test(idCard);
};
export const validateIdCard = (idCard) => {
const idCardRegex18 = /^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[0-9Xx]$/;
const idCardRegex15 = /^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/;
return idCardRegex18.test(idCard) || idCardRegex15.test(idCard);
};
验证URL格式
js
export const validateUrl = (url) => {
const urlRegex = /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
return urlRegex.test(url);
};
export const validateUrl = (url) => {
const urlRegex = /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
return urlRegex.test(url);
};
验证是否包含中文字符
js
export const validateChinese = (str) => {
const chineseRegex = /[\u4e00-\u9fa5]/;
return chineseRegex.test(str);
};
export const validateChinese = (str) => {
const chineseRegex = /[\u4e00-\u9fa5]/;
return chineseRegex.test(str);
};
验证是否为纯数字
js
export const validateNumber = (str) => {
const numberRegex = /^\d+$/;
return numberRegex.test(str);
};
export const validateNumber = (str) => {
const numberRegex = /^\d+$/;
return numberRegex.test(str);
};