Di bawah ini adalah beberapa verifikasi dan fungsi JS yang sering saya gunakan. Beberapa verifikasi yang telah saya tulis langsung ke properti objek, dan dapat dipanggil langsung melalui objek.
Salinan kode adalah sebagai berikut:
// Operasi Divisi Floating Point
fungsi fdiv (a, b, n) {
if (n == tidak terdefinisi) {n = 2; }
var t1 = 0, t2 = 0, r1, r2;
coba {t1 = a.toString (). split (".") [1] .length} catch (e) {}
coba {t2 = b.toString (). split (".") [1] .length} catch (e) {}
dengan (matematika) {
r1 = angka (a.tostring (). REPLACE (".", ""));
r2 = angka (b.tostring (). REPLACE (".", ""));
return ((r1 / r2) * pow (10, t2 - t1)). tofixed (n);
}
}
Salinan kode adalah sebagai berikut:
// operasi multiplikasi titik mengambang
fungsi fmul (a, b, n) {
if (n == tidak terdefinisi) {n = 2; }
var m = 0, s1 = a.tostring (), s2 = b.tostring ();
coba {m += s1.split (".") [1] .length} catch (e) {}
coba {m += s2.split (".") [1] .length} catch (e) {}
return (number (s1.replace (".", "")) * number (s2.replace (".", "")) / math.pow (10, m)). Tofixed (n);
}
Salinan kode adalah sebagai berikut:
// Operasi Penambahan Nomor Titik Mengambang
fungsi faadd (a, b, n) {
if (n == tidak terdefinisi) {n = 2; }
var r1, r2, m;
coba {r1 = a.toString (). split (".") [1] .length} catch (e) {r1 = 0}
coba {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);
}
Salinan kode adalah sebagai berikut:
// Operasi Pengurangan Nomor Titik Mengambang
fungsi fsub (a, b, n) {
if (n == tidak terdefinisi) {n = 2; }
var r1, r2, m;
coba {r1 = a.toString (). split (".") [1] .length} catch (e) {r1 = 0}
coba {r2 = b.toString (). split (".") [1] .length} catch (e) {r2 = 0}
M = Math.pow (10, Math.max (R1, R2));
// panjang akurasi kontrol dinamis
// n = (r1> = r2)? R1: R2;
return ((a * m - b * m) / m) .tofixed (n);
}
Number.prototype.add = function (arg) {
return fadd (ini, arg);
}
Number.prototype.subs = function (arg) {
return fsub (ini, arg);
}
Number.prototype.mul = function (arg) {
return fmul (ini, arg);
}
Number.prototype.div = function (arg) {
mengembalikan fdiv (ini, arg);
}
Salinan kode adalah sebagai berikut:
/// Memformat jumlah digit, jumlah angka yang tidak mencukupi adalah 0 secara default. Jika parameter 2 ditentukan dan nilai parameter 2 adalah 1, sisi kanan akan menjadi 0 dengan 0 jika parameter 2 ditentukan.
Number.prototype.formatlen = function (len, langsung) {
var d = parseInt (langsung);
if (isnan (d)) {d = 0; }
var num = this.toString ();
if (num.length <len) {
untuk (var i = num.length; i <len; i ++) {
if (d == 0) {
num = "0" + num;
}
kalau tidak {
num += "0";
}
}
}
Return Num;
}
Salinan kode adalah sebagai berikut:
// Memformat tempat desimal, Anda dapat menentukan jumlah tempat desimal, apakah akan bulat atau tidak dan parameter lainnya seperti
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);
}
kalau tidak {
if (numarr [1] .length == len) {
rad = numarr [1];
}
kalau tidak {
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); }}
}
}
}
}
kalau tidak {
rad = rad.formatlen (len);
}
kembalikan numpart + "." + rad;
}
Salinan kode adalah sebagai berikut:
// Mendeteksi apakah elemen yang sama dalam split string adalah pemisah string. Jika pemisah ditentukan, ditentukan apakah ada duplikasi pembatas string. Jika tidak ditentukan, ditentukan apakah ada duplikasi dari satu string.
// Kembalikan true jika ada duplikat
String.prototype.coareElement = function (s) {
var str = this.toString ();
if (s == tidak terdefinisi) {
untuk (var i = 0; i <str.length; i ++) {
untuk (j = i+1; j <str.length; j ++) {
if (str.substr (i, 1) == str.substr (j, 1)) {
Kembali Benar;
}
}
}
}
kalau tidak {
var strarr = str.split (s);
untuk (var i = 0; i <strarr.length; i ++) {
untuk (var j = i+1; j <strarr.length; j ++) {
if (strarr [i] == strarr [j]) {
Kembali Benar;
}
}
}
}
mengembalikan false;
}
String.prototype.replaceall = function (str, toStr) {
ostr = ini;
while (ostr.indexof (str)> -1) {
ostr = ostr.replace (str, tostr);
}
mengembalikan Ostr;
}
Array.prototype.compareeLement = function () {
var strarr = ini;
untuk (var i = 0; i <strarr.length; i ++) {
untuk (var j = i+1; j <strarr.length; j ++) {
if (strarr [i] == strarr [j]) {
Kembali Benar;
}
}
}
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// String dikonversi menjadi jumlah grup. Jika pembatas tidak ditentukan, pembatas dibatasi secara default. Jika pembatas kosong, setiap karakter digunakan sebagai elemen array.
String.prototype.toArray = function (s) {
if (s == tidak terdefinisi) {s = ","; }
var strarr = [];
strarr = this.split (s);
Return Strarr;
}
Salinan kode adalah sebagai berikut:
// Konversi array ke string, semua elemen terhubung menggunakan pembatas yang ditentukan, dan standarnya adalah,
Array.prototype.toidlist = function (s) {
if (s == tidak terdefinisi) {s = ","; }
var list = "";
untuk (var i = 0; i <this.length; i ++) {
daftar + = (daftar == ""? Ini [i]: s + "" + ini [i]);
}
daftar pengembalian;
}
Salinan kode adalah sebagai berikut:
// Dapatkan indeks lokasi elemen yang ditentukan, elemen tidak ada dan mengembalikan -1
Array.prototype.getIndex = function (s) {
indeks var = -1;
untuk (var i = 0; i <this.length; i ++) {
if ((s + "") == ini [i]) {
indeks = i;
}
}
indeks pengembalian;
}
Salinan kode adalah sebagai berikut:
// Lepaskan elemen yang ditentukan dari array
Array.prototype.remove = function (s) {
var list = "";
untuk (var i = 0; i <this.length; i ++) {
if (s! = this [i]) {
daftar + = (daftar == ""? Ini [i]: "," + ini [i]);
}
}
return list.toArray ();
}
Salinan kode adalah sebagai berikut:
/// Urutkan array ASC secara numerik menentukan apakah akan mengurutkan ASC. Ini bisa benar atau salah, tidak ditentukan sebagai urutan naik.
Array.prototype.sortbynumber = function (ASC) {
if (ASC == tidak terdefinisi) {ASC = true; }
if (asc) {
kembalikan ini.
}
kalau tidak {
kembalikan this.sort (sortNumberDesc);
}
}
Array.prototype.inarray = function (e) {
var isin = false;
untuk (var i = 0; i <this.length; i ++) {
if (this [i] == (e + "")) {
Isin = true;
}
}
kembalikan isin;
}
String.prototype.trim = function (s) {return trim (this, s); }
String.prototype.ltrim = function (s) {return ltrim (this, s); }
String.prototype.rtrim = function (s) {return rtrim (this, s); }
// sortbynumer untuk mengurutkan nomor dalam urutan menurun di array
function sortNumberDesc (a, b) {
mengembalikan b - a;
}
// sortbynumer untuk mengurutkan nomor dalam urutan naik dalam array dengan array.sortbynumer
fungsi sortNumberasC (a, b) {
mengembalikan a - b;
}
// Ini adalah fungsi independen
fungsi ltrim (str, s) {
if (s == tidak terdefinisi) {s = ""; }
if (str == s && s! = "") {return s; }
var i;
untuk (i = 0; i <str.length; i ++) {
if (str.charat (i)! = s && str.charat (i)! = s) break;
}
str = str.substring (i, str.length);
mengembalikan str;
}
fungsi rtrim (str, s) {
var i;
if (str == s && s! = "") {return s; }
if (s == tidak terdefinisi) {s = ""; }
untuk (i = str.length-1; i> = 0; i--) {
if (str.charat (i)! = s && str.charat (i)! = s) break;
}
str = str.substring (0, i + 1);
mengembalikan str;
}
function trim (str, s) {
return ltrim (rtrim (str, s), s);
}
Salinan kode adalah sebagai berikut:
/// Deteksi apakah string terdiri dari Cina, Inggris, angka dan garis bawah
fungsi chknickname (str) {
var pola =/^[/w/u4e00-/u9fa5]+$/gi;
if (pola.test (str)) {
Kembali Benar;
}
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Panjang juri (panjang tidak terbatas pada 0)
String.prototype.islen = function () {
var isRightFormat = false;
var minnum = argumen [0]? Argumen [0]: 0;
var maxnum = argumen [1]? Argumen [1]: 0;
isRightFormat = (MinNum == 0 && maxNum == 0? True: (calculate_byte (this)> = Minnum && calculated_byte (this) <= maxnum? true: false));
mengembalikan isRightformat;
}
Salinan kode adalah sebagai berikut:
// Verifikasi apakah string adalah huruf +angka +_ +-
String.prototype.isstr = function () {
var myreg =/^[0-9a-za-z/-/_]+$/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi nama pengguna
String.prototype.isusername = function () {
var myreg =/^[0-9a-za-z/-/_] {3,50} $/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi kata sandi
String.prototype.ispassword = function () {
var myreg =/^[0-9a-za-z` ~!@#$%^&*() -_+=/{/}/[/]/;/:/"/'/? ////] {6,} $/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi apakah itu surat
String.prototype.isen = function () {
var myreg = /^[a-za-z]+$ /;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Pastikan apakah itu karakter Cina
String.prototype.iscn = function () {
var myreg =/^[/u0391-/uffe5]+$/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi email
String.prototype.isemail = function () {
var myreg = /($ 0/w-/. media+)@(/ menyedihkan 0-9 $ {1,3}/.ht0-9 media {1,3}/.ht0-9 media {1.3,30-9 $ {1,3/: "($ 0+{.3 {.3.
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi MSN
String.prototype.ismsn = function () {
var myreg = /($ 0/w-/. media+)@(/ menyedihkan 0-9 $ {1,3}/.ht0-9 media {1,3}/.ht0-9 media {1.3,30-9 $ {1,3/: "($ 0+{.3 {.3.
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi nomor qq
String.prototype.isqq = function () {
var myreg =/^[1-9]/d {4,10} $/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi URL
String.prototype.ishttpurl = function () {
var myreg = /^http:////îa-za-z0-9 bahit
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi nama domain
String.prototype.isdomainname = function () {
var myreg = /^ media0-9a-za-z media($ 00-9a-za-z/-apus/.
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi alamat IPv4
String.prototype.isipv4 = function () {
var myreg = /^(2 media0-5 media {2 --|1?ht0-9 bah {1,2}).(2ö0-5 media {2 --|1?ht0-9 media {1.2 (22.22 (2 (0-5 )|1? '0-9 dengan;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi alamat gambar (gambar yang dihasilkan secara dinamis oleh CGI tidak didukung)
String.prototype.isimgurl = function () {
var myreg = /^/.(jpeg|jpg|gif|bmp|png|pcx|Tiff|tga|lwf)$/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi nomor ponsel
String.prototype.iscellphone = function () {
var myreg =/^((/(/d {3}/)) | (/d {3}/-))? 1 [3,5]/d {9} $/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi telepon darat
String.prototype.isphone = function () {
var myreg =/^[+] {0,1} (/d) {1,3} []? ([-]? (((/d) | []) {1,12})+$/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi kode pos
String.prototype.iszipcode = function () {
var myreg = /[0-9] {6} /;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi nomor ID
String.prototype.isidcard = function () {
var myreg =/(^([/d] {15} | [/d] {18} | [/d] {17} [xx] {1}) $)/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// verifikasi format tanggal yy-mm-dd
String.prototype.isDateFormat = function () {
var myreg = /^[0-9] {4}-[0-9] {1,2}-[0-9] {1,2} $ /;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi Format Waktu HH: MM: SS
String.prototype.isRangetime = function () {
var myreg =/^(/d {2}): (/d {2}): (/d {2}) $/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Verifikasi format jumlah
String.prototype.ismoney = function () {
var myreg = /^ media0-9 media {1,8} media.$ {0,1} media0-9 media {0,6 --$/;
if (myreg.test (ini)) mengembalikan true;
mengembalikan false;
}
Salinan kode adalah sebagai berikut:
// Kata -kata memverifikasi format angka dan menilai lingkungan nomor (min: nilai minimum; maks: nilai maksimum.)
String.prototype.isint = function () {
var isRightFormat = false;
var minnum = argumen [0]? Argumen [0]: 0;
var maxnum = argumen [1]? Argumen [1]: 0;
var myreg =/^[-/+]?/d+$/;
if (myreg.test (this)) {
isRightFormat = (minnum == 0 && maxNum == 0? Benar: (ini> Minnum && ini <maxnum? true: false));
}
mengembalikan isRightformat;
}
Salinan kode adalah sebagai berikut:
// Verifikasi kata kunci pencarian
String.prototype.issearch = function () {
var myreg = /^ media/|/"/'<> ,.*&@#$;:!^());
if (myreg.test (ini)) mengembalikan false;
Kembali Benar;
}
Salinan kode adalah sebagai berikut:
// JS secara akurat menghitung panjang string
fungsi calculate_byte (stargetStr) {
var stmpstr, stmpchar;
var noriginlen = 0;
var nstrlength = 0;
stmpstr = string baru (stargetStr);
noriginlen = stmpstr.length;
untuk (var i = 0; i <noriginlen; i ++) {
stmpchar = stmpstr.charat (i);
if (Escape (stmpchar) .length> 4) {
nstrlength += 2;
} lain if (stmpchar! = '/r') {
nstrlength ++;
}
}
mengembalikan nstrlength;
}
Salinan kode adalah sebagai berikut:
// nilai warna;
String.prototype.iscolor = function () {
var s = argumen [0]? argumen [0]: "";
s = s.trim ();
if (s.length! = 7) return false;
return s.search (//#[a-fa-f0-9] {6}/)! = -1;
}
Salinan kode adalah sebagai berikut:
// pemformatan tanggal JS
Date.prototype.format = function (format) {
var o = {
"M +": this.getmonth () + 1, // bulan
"D+": this.getDate (), // day
"H+": this.getHours (), // jam
"M+": this.getMinutes (), // menit
"S+": this.getSeconds (), // kedua
"q +": math.floor ((this.getmonth () + 3) /3), // kuartal
"S": this.getMilliseconds () // milidetik
}
if (/(y+)/.test(format)) {
format = format.replace (regexp. $ 1, (this.getlyear () + "") .substr (4 - regexp. $ 1.length));
}
untuk (var k in o) {
if (regexp baru ("(" + k + ")). test (format)) {
format = format.replace (regexp. $ 1, regexp. $ 1.length == 1? o [k]: ("00" + o [k]). Substr (("" + o [k]). Panjang));
}
}
format pengembalian;
}
fungsi haschinese (value) {
if (/^ media/u4e00-/u9fa5$$$/.test(value)) {
Kembali Benar;
}
mengembalikan false;
}
function todate (dateStr) {
var dstr = dATestr.toString ();
datestr = dstr.replaceall ("-", "/");
kembalikan tanggal baru (date.parse (dateStr));
}
Salinan kode adalah sebagai berikut:
// Apakah daftar ID?
String.prototype.isidlist = function (s) {
if (s == tidak terdefinisi) {
s = ",";
}
var arr = this.split (s);
untuk (var i = 0; i <arr.length; i ++) {
if (isnan (parseInt (arr [i]))) {return false; }
}
Kembali Benar;
}
Salinan kode adalah sebagai berikut:
// Dapatkan objek yang dipicu oleh acara tersebut
fungsi getEventTarget (e) {
E = E || window.event;
Return E.Target || E.Srcelement;
}
Kode sederhana, tetapi fungsinya sangat praktis. Silakan merujuk jika Anda membutuhkannya.