JS中--常用common方法
1.根据url中携带的参数名获取参数值
/**
* 获取url中的参数
*/
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
var r = window.location.search.substr(1).match(reg); //匹配目标参数
if (r != null) return unescape(r[2]); return null; //返回参数值
}
示例:
var url :http://localhost:8003/htmls/xxxxxxxx.html?guid=b3905077-ac9a-b9ba-5ba0-8ad411fa7d69&iType=2019
var iType = getUrlParam("iType");
console.log(iType ) // 2019
用法:
2.常用判断登录端的方法
/* 登陆端判别方法*/
export function _isMobile() {
const flag = navigator.userAgent.match(/(phone | pad | pod | iPhone | iPod | ios | iPad | Android | Mobile | BlackBerry | IEMobile | MQQBrowser | JUC | Fennec | wOSBrowser | BrowserNG | WebOS | Symbian | Windows Phone)/i)
return flag
}
3.判断移动端还是pc端
/* 判别手机端还是pc*/
export function judgeCss() {
if (this._isMobile()) {
this.phoneCss = true
// alert("手机端")
} else {
this.pcCss = true
// alert("pc端")
}
}
4.基础密码校验
至少八个字符,至少一个字母和一个数字:
"^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$"
至少八个字符,至少一个字母,一个数字和一个特殊字符:
"^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{8,}$"
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[^]{8,20}$/
至少八个字符,至少一个大写字母,一个小写字母和一个数字:
"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$"
至少八个字符,至少一个大写字母,一个小写字母,一个数字和一个特殊字符:
"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$"
最少8个字符,最多10个字符,至少一个大写字母,一个小写字母,一个数字和一个特殊字符:
"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,10}$"
5.将有效数字转换成星号
/** * @Description:将有效数字转换成星号 * @param {*} isHideNumState 是否隐藏数据状态 * @param {*} originValue 待转换数据 * * @return {*} */ function ConvertToAsterisk(isHideNumState, originValue) { const previewData = originValue.toLocaleString() // 待隐藏数据 // 待转换数据为空 或者 展示数据 if (originValue === '' || isHideNumState === false) { return originValue } // 有待转换数据 if (originValue !== '') { const convertedValue = isHideNumState ? previewData.toString().replace(/\d/g, '*') : previewData return convertedValue } } export { ConvertToAsterisk }
6.千分位数据转换
// 千分位数据转换 export function convertNumber(value) { if (!value) return 0 // 处理整数部分 const intPart = Math.trunc(value) const intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,') // 预定义小数部分 let floatPart = '' const valueArray = value.toString().split('.') if (valueArray.length === 2) { floatPart = valueArray[1].toString() return intPartFormat + '.' + floatPart } return intPartFormat + floatPart }
export function numberToCurrencyNo (value) { if (!value) return 0 var type = typeof value || 'noType' if (type == 'number') { // 获取整数部分 const intPart = Math.trunc(value) // 整数部分处理,增加, const intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,') // 预定义小数部分 let floatPart = '' // 将数值截取为小数部分和整数部分 const valueArray = value.toString().split('.') if (valueArray.length === 2) { // 有小数部分 floatPart = valueArray[1].toString() // 取得小数部分 return intPartFormat + '.' + floatPart } return intPartFormat + floatPart } else { return value } }