export const noop = (f:any) => f
// 驗證手機號
export const isPhone = (phone:string):boolean => {
const reg = /^1[3-9]\d{9}$/
return reg.test(phone)
}
// 驗證身份證號
export const isIdNumber = (number:string):boolean => {
const reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
return reg.test(number)
}
// 驗證地址
// export const validateAddress = (address:string):boolean => address === address
// .replace(/(\d+)([^\d]+)/, '$1').replace(/([a-zA-Z]+)([^a-zA-Z]+)/, '$1')
export const isValidAddress = (address:string):boolean => {
const reg = /[\u4e00-\u9fa5]/
if (!reg.test(address)) {
return address !== address.replace(/(\d+)([^\d]+)/, '$1').replace(/([a-zA-Z]+)([^a-zA-Z]+)/, '$1')
}
return reg.test(address)
}
export function getQueryString(name:string) {
const reg = new RegExp(`(^|&)${name}=([^&]*)(&|$)`, 'i') // 匹配目標參數
const result = window.location.search.substr(1).match(reg) // 對querystring匹配目標參數
if (result != null) {
return decodeURIComponent(result[2])
}
return null
}
/**
*去除空的字符串(根據提供特殊的字符串)
*/
export const trim = (datas:Record<string, any>, delimiters:any = '') => {
const props:Record<string, any> = {}
Object.entries(datas).forEach(([key, value]) => {
if (value !== delimiters) {
props[key] = value
}
})
return props
}
/**
* 設置cookie
* @param name
* @param value
*/
export function setCookie(name:string, value:string, days:number = 15) {
const exp = new Date()
exp.setTime(exp.getTime() + (days * 24 * 60 * 60 * 1000))
document.cookie = `${name}=${escape(value)};expires=${exp.toUTCString()};path=/`
}
/**
* 獲取cookie
* @param name
*/
export function getCookie(name:string) {
const arr = document.cookie.match(new RegExp(`(^| )${name}=([^;]*)(;|$)`))
if (arr != null) return unescape(arr[2]); return null
}
/**
* 延遲函數
* @param ms
*/
export function delay(ms: number) {
return new Promise(r => setTimeout(r, ms))
}
/**
* 類型判斷
* @param o
*/
export function toTypeof(o: any): string {
if (typeof o !== 'object') {
return (typeof o)
}
return Object.prototype.toString.call(o).match(/\s([a-zA-Z]+)/)[1].toLowerCase()
}
常用的正則匹配方法(手機號助琐、身份證號祭埂、地址、url參數兵钮、去除空字符串蛆橡、獲取cookie、設置cookie)
?著作權歸作者所有,轉載或內容合作請聯系作者
- 文/潘曉璐 我一進店門缭嫡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缔御,“玉大人,你說我怎么就攤上這事妇蛀「唬” “怎么了笤成?”我有些...
- 正文 為了忘掉前任培遵,我火速辦了婚禮,結果婚禮上登刺,老公的妹妹穿的比我還像新娘籽腕。我一直安慰自己,他們只是感情好纸俭,可當我...
- 文/花漫 我一把揭開白布皇耗。 她就那樣靜靜地躺著,像睡著了一般揍很。 火紅的嫁衣襯著肌膚如雪郎楼。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼荐操,長吁一口氣:“原來是場噩夢啊……” “哼芜抒!你這毒婦竟也來了珍策?” 一聲冷哼從身側響起,我...
- 正文 年R本政府宣布料仗,位于F島的核電站湾盗,受9級特大地震影響,放射性物質發(fā)生泄漏立轧。R本人自食惡果不足惜格粪,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望氛改。 院中可真熱鬧帐萎,春花似錦、人聲如沸平窘。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽瑰艘。三九已至是鬼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間紫新,已是汗流浹背均蜜。 一陣腳步聲響...
推薦閱讀更多精彩內容
- eg:http://localhost:63342/appwork/detail/detail.html?clas...