Commonly used JS validation and function summary
- 2020-05-07 19:16:30
- OfStack
The following are some JS validation and functions that I usually use, and some validation that I write directly into the properties of the object, which can be called directly through the object
// Floating-point division
function fdiv(a, b, n) {
if (n == undefined) { n = 2; }
var t1 = 0, t2 = 0, r1, r2;
try { t1 = a.toString().split(".")[1].length } catch (e) { }
try { t2 = b.toString().split(".")[1].length } catch (e) { }
with (Math) {
r1 = Number(a.toString().replace(".", ""));
r2 = Number(b.toString().replace(".", ""));
return ((r1 / r2) * pow(10, t2 - t1)).toFixed(n);
}
}
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
// Floating-point addition
function fadd(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2))
return ((a * m + b * m) / m).toFixed(n);
}
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
/// Format the number of digits, the default left fill 0, If an argument is specified 2 And parameters 2 The value of 1 Are on the right side of the cover 0
Number.prototype.FormatLen = function (len, direct) {
var d = parseInt(direct);
if (isNaN(d)) { d = 0; }
var num = this.toString();
if (num.length < len) {
for (var i = num.length; i < len; i++) {
if (d == 0) {
num = "0" + num;
}
else {
num += "0";
}
}
}
return num;
}
// Format decimal place , You can specify decimal places , Whether or not 4 Give up 5 The parameters such as
Number.prototype.FormatRadix = function (len, IsRound) {
var num = this.toString();
var numArr = num.split('.');
var rad = 0;
var numpart = parseInt(numArr[0]);
if (numArr.length >= 2) {
if (numArr[1].length < len) {
rad = parseInt(numArr[1]).FormatLen(len, 1);
}
else {
if (numArr[1].length == len) {
rad = numArr[1];
}
else {
rad = numArr[1].substr(0, len);
if (IsRound) {
var d = parseInt(numArr[1].substr(len, 1));
if (d >= 5) { rad += 1; if (rad.toString().length > len) { numpart += 1; rad = rad.toString().substr(1, len); } }
}
}
}
}
else {
rad = rad.FormatLen(len);
}
return numpart + "." + rad;
}
// Detects if there is the same element in the string split Is a string delimiter. If a delimiter is specified, it determines whether the delimited string is duplicated, and if not, whether a single string is duplicated
// There is a repeat return true
String.prototype.CompareElement = function (s) {
var str = this.toString();
if (s == undefined) {
for (var i = 0; i < str.length; i++) {
for (j = i + 1; j < str.length; j++) {
if (str.substr(i, 1) == str.substr(j, 1)) {
return true;
}
}
}
}
else {
var strArr = str.split(s);
for (var i = 0; i < strArr.length; i++) {
for (var j = i + 1; j < strArr.length; j++) {
if (strArr[i] == strArr[j]) {
return true;
}
}
}
}
return false;
}
String.prototype.replaceAll = function (str, tostr) {
oStr = this;
while (oStr.indexOf(str) > -1) {
oStr = oStr.replace(str, tostr);
}
return oStr;
}
Array.prototype.CompareElement = function () {
var strArr = this;
for (var i = 0; i < strArr.length; i++) {
for (var j = i + 1; j < strArr.length; j++) {
if (strArr[i] == strArr[j]) {
return true;
}
}
}
return false;
}
// Number of string transitions , If no delimiter is specified s, The default to , Separator separator , If the delimiter is null, each character is treated as 1 Array elements
String.prototype.ToArray = function (s) {
if (s == undefined) { s = ","; }
var strArr = [];
strArr = this.split(s);
return strArr;
}
// will 1 Array conversion 1 , all elements are concatenated with the specified delimiter. The default delimiter is ,
Array.prototype.ToIDList = function (s) {
if (s == undefined) { s = ","; }
var list = "";
for (var i = 0; i < this.length; i++) {
list += (list == "" ? this[i] : s + "" + this[i]);
}
return list;
}
// Gets the location index of the specified element , Element does not exist -1
Array.prototype.GetIndex = function (s) {
var index = -1;
for (var i = 0; i < this.length; i++) {
if ((s + "") == this[i]) {
index = i;
}
}
return index;
}
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
0
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
1
/// Detects if the string is made of Chinese , English , Numbers and underscores
function chkNickName(str) {
var pattern = /^[\w\u4e00-\u9fa5]+$/gi;
if (pattern.test(str)) {
return true;
}
return false;
}
// To determine the length of the ( The length is not limited to 0)
String.prototype.IsLen = function () {
var isRightFormat = false;
var minnum = arguments[0] ? arguments[0] : 0;
var maxnum = arguments[1] ? arguments[1] : 0;
isRightFormat = (minnum == 0 && maxnum == 0 ? true : (calculate_byte(this) >= minnum && calculate_byte(this) <= maxnum ? true : false));
return isRightFormat;
}
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
4
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
5
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
6
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
7
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
8
// Floating-point multiplication
function fmul(a, b, n) {
if (n == undefined) { n = 2; }
var m = 0, s1 = a.toString(), s2 = b.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
}
9
// Floating-point addition
function fadd(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2))
return ((a * m + b * m) / m).toFixed(n);
}
0
// validation QQ number
String.prototype.IsQQ = function () {
var myReg = /^[1-9]\d{4,10}$/;
if (myReg.test(this)) return true;
return false;
}
// Verify the url
String.prototype.IsHttpUrl = function () {
var myReg = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
if (myReg.test(this)) return true;
return false;
}
// To verify the domain name
String.prototype.IsDoMainName = function () {
var myReg = /^[0-9a-zA-Z]([0-9a-zA-Z\-]+\.){1,3}[a-zA-Z]{2,4}?$/;
if (myReg.test(this)) return true;
return false;
}
// validation IPV4 address
String.prototype.IsIpv4 = function () {
var myReg = /^(2[0-5]{2}|1?[0-9]{1,2}).(2[0-5]{2}|1?[0-9]{1,2}).(2[0-5]{2}|1?[0-9]{1,2}).(2[0-5]{2}|1?[0-9]{1,2})$/;
if (myReg.test(this)) return true;
return false;
}
// Verify image address ( Does not support the CGI Dynamically generated images )
String.prototype.IsImgURL = function () {
var myReg = /^\.(jpeg|jpg|gif|bmp|png|pcx|tiff|tga|lwf)$/;
if (myReg.test(this)) return true;
return false;
}
// Verify phone number
String.prototype.IsCellPhone = function () {
var myReg = /^((\(\d{3}\))|(\d{3}\-))?1[3,5]\d{9}$/;
if (myReg.test(this)) return true;
return false;
}
// Floating-point addition
function fadd(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2))
return ((a * m + b * m) / m).toFixed(n);
}
7
// Floating-point addition
function fadd(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2))
return ((a * m + b * m) / m).toFixed(n);
}
8
// Verification of id card number
String.prototype.IsIdCard = function () {
var myReg = /(^([\d]{15}|[\d]{18}|[\d]{17}[xX]{1})$)/;
if (myReg.test(this)) return true;
return false;
}
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
0
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
1
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
2
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
3
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
4
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
5
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
6
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
7
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
8
// A floating-point subtraction operation
function fsub(a, b, n) {
if (n == undefined) { n = 2; }
var r1, r2, m;
try { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
// Dynamic control precision length
//n = (r1 >= r2) ? r1 : r2;
return ((a * m - b * m) / m).toFixed(n);
}
Number.prototype.add = function (arg) {
return fadd(this, arg);
}
Number.prototype.subs = function (arg) {
return fsub(this, arg);
}
Number.prototype.mul = function (arg) {
return fmul(this, arg);
}
Number.prototype.div = function (arg) {
return fdiv(this, arg);
}
9
The code is very simple, simple, but the function is very practical, there is a need for a friend reference