Maison  >  Article  >  interface Web  >  Résumé de la vérification et des fonctions JS couramment utilisées_Connaissances de base

Résumé de la vérification et des fonctions JS couramment utilisées_Connaissances de base

WBOY
WBOYoriginal
2016-05-16 16:24:49944parcourir

Voici quelques vérifications et fonctions JS que j'utilise couramment. Certaines vérifications sont directement écrites dans les propriétés de l'objet et peuvent être appelées directement via object.method

Copier le code Le code est le suivant :

//Opération de division en virgule flottante
fonction fdiv(a, b, n) {
Si (n == non défini) { n = 2 }
var t1 = 0, t2 = 0, r1, r2;
Essayez { t1 = a.toString().split(".")[1].length } catch (e) { }
Essayez { t2 = b.toString().split(".")[1].length } catch (e) { }
avec (Mathématiques) {
r1 = Number(a.toString().replace(".", ""));
          r2 = Number(b.toString().replace(".", ""));
          return ((r1 / r2) * pow(10, t2 - t1)).toFixed(n);
>
>

Copier le code Le code est le suivant :

//Multiplication à virgule flottante
fonction fmul(a, b, n) {
Si (n == non défini) { n = 2 }
var m = 0, s1 = a.toString(), s2 = b.toString();
Essayez { m = s1.split(".")[1].length } catch (e) { }
Essayez { m = s2.split(".")[1].length } catch (e) { }
Retour (Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)).toFixed(n);
>

Copier le code Le code est le suivant :

//Opération d'addition à virgule flottante
fonction fadd(a, b, n) {
Si (n == non défini) { n = 2 }
var r1, r2, m;
Essayez { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
Essayez { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2))
Retour ((a * m b * m) / m).toFixed(n);
>

Copier le code Le code est le suivant :

//Opération de soustraction à virgule flottante
fonction fsub(a, b, n) {
Si (n == non défini) { n = 2 }
var r1, r2, m;
Essayez { r1 = a.toString().split(".")[1].length } catch (e) { r1 = 0 }
Essayez { r2 = b.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2));
//Longueur de précision du contrôle dynamique
//n = (r1 >= r2) ? r1 : r2;
Retour ((a * m - b * m) / m).toFixed(n);
>
Number.prototype.add = fonction (argument) {
Renvoie fadd(this, arg);
>
Number.prototype.subs = fonction (argument) {
Renvoie fsub(this, arg);
>
Number.prototype.mul = fonction (argument) {
Retourner fmul(this, arg);
>
Number.prototype.div = fonction (arg) {
Renvoie fdiv(this, arg);
>

Copier le code Le code est le suivant :

///Formater le nombre de chiffres. Si le nombre de chiffres est insuffisant, 0 sera ajouté à gauche par défaut. Si le paramètre 2 est spécifié et que la valeur du paramètre 2 est 1, 0 sera ajouté à droite Number.prototype.FormatLen = fonction (len, direct) {
var d = parseInt(direct);
Si (isNaN(d)) { d = 0; >
var num = this.toString();
Si (num.length < len) {
pour (var i = num.length; i < len; i ) {
                 si (d == 0) {
                num = "0" num;
            }
             autre {
               num = "0";
            }
>
>
Renvoie le numéro ;
>

Copier le code Le code est le suivant :
//Formater les chiffres décimaux, vous pouvez spécifier le nombre de décimales, s'il faut arrondir et d'autres paramètres
Number.prototype.FormatRadix = fonction (len, IsRound) {
var num = this.toString();
var numArr = num.split('.');
var rad = 0;
var numpart = parseInt(numArr[0]);
Si (numArr.length >= 2) {
Si (numArr[1].length < len) {
             rad = parseInt(numArr[1]).FormatLen(len, 1);
>
         autre {
Si (numArr[1].length == len) {
               rad = numArr[1];
            }
             autre {
                 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); >                 }
            }

} >

sinon {
          rad = rad.FormatLen(len);
>
Renvoie la partie numérique "." rad;
>


Copier le code Le code est le suivant :

//Détecte s'il y a les mêmes éléments dans la chaîne. split est le séparateur de chaîne. Si le séparateur est spécifié, il est jugé si la chaîne séparée par le séparateur est répétée. S'il n'est pas spécifié, il est jugé si le séparateur est unique. la chaîne est répétée
//Renvoie vrai s'il y a des doublons
String.prototype.CompareElement = fonction(s) {
var str = this.toString();
Si (s == non défini) {
pour (var i = 0; i < str.length; i ) {
pour (j = i 1; j < str.length; j ) {
Si (str.substr(i, 1) == str.substr(j, 1)) {
                         return true ;
                }
            }
>
>
sinon {
var strArr = str.split(s);
pour (var i = 0; i < strArr.length; i ) {
pour (var j = i 1; j < strArr.length; j ) {
Si (strArr[i] == strArr[j]) {
                         return true ;
                }
            }
>
>
Renvoie faux ;
>
String.prototype.replaceAll = fonction (str, tostr) {
oStr = ceci;
Tandis que (oStr.indexOf(str) > -1) {
oStr = oStr.replace(str, tostr);
>
Retourner oStr ;
>
Array.prototype.CompareElement = function () {
var strArr = ceci;
pour (var i = 0; i < strArr.length; i ) {
pour (var j = i 1; j < strArr.length; j ) {
Si (strArr[i] == strArr[j]) {
                   return true ;
            }
>
>
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Le nombre de chaînes à convertir en groupes. Si le délimiteur s n'est pas spécifié, le délimiteur sera séparé par, par défaut. Si le délimiteur spécifié est vide, chaque caractère sera traité comme un élément du tableau
. String.prototype.ToArray = fonction(s) {
Si (s == non défini) { s = ","; var strArr = [];
​ strArr = this.split(s);
Retour strArr;
>

Copier le code Le code est le suivant :
//Convertit un tableau en chaîne. Tous les éléments sont connectés à l'aide du délimiteur spécifié. Le délimiteur par défaut est
. Array.prototype.ToIDList = fonction(s) {
Si (s == non défini) { s = ","; var liste = "";
pour (var i = 0; i < this.length; i ) {
list = (list == "" ? this[i] : s "" this[i]);
>
Liste de retour ;
>


Copier le code Le code est le suivant :

//Obtenir l'index de position de l'élément spécifié. Si l'élément n'existe pas, renvoie -1
. Array.prototype.GetIndex = fonction(s) {
indice var = -1;
pour (var i = 0; i < this.length; i ) {
Si ((s "") == this[i]) {
indice = je;
>
>
Indice de retour ;
>

Copier le code Le code est le suivant :

//Supprime l'élément spécifié du tableau
Array.prototype.Remove = fonction(s) {
var liste = "";
pour (var i = 0; i < this.length; i ) {
Si (s != this[i]) {
list = (list == "" ? this[i] : "," this[i]);
>
>
Retourner list.ToArray();
>

Copier le code Le code est le suivant :

/// Trier numériquement le tableau asc spécifie s'il faut trier par ordre croissant, qui peut être vrai ou faux, l'ordre croissant n'est pas spécifié
Array.prototype.SortByNumber = fonction (asc) {
Si (asc == non défini) { asc = true }
Si (asc) {
          return this.sort(SortNumberAsc);
>
sinon {
          return this.sort(SortNumberDesc);
>
>
Array.prototype.InArray = fonction (e) {
var IsIn = faux;
pour (var i = 0; i < this.length; i ) {
Si (this[i] == (e "")) {
IsIn = vrai ;
>
>
Retour 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); //Utiliser avec Array.SortByNumer pour trier les nombres par ordre décroissant
fonction SortNumberDesc(a, b) {
Retour b - a;
>
//Utiliser avec Array.SortByNumer pour trier les nombres par ordre croissant
fonction SortNumberAsc(a, b) {
Retourner a - b ;
>
//C'est une fonction indépendante
fonction LTrim(str, s) {
Si (s == non défini) { s = " "; }
If (str == s && s != " ") { return s }
var je;
pour (i = 0; i < str.length; i ) {
Si (str.charAt(i) != s && str.charAt(i) != s) break;
>
 str = str.substring(i, str.length);
Retour str;
>
fonction RTrim(str, s) {
var je;
If (str == s && s != " ") { return s }
Si (s == non défini) { s = " "; }
pour (i = str.length - 1; i >= 0; i--) {
Si (str.charAt(i) != s && str.charAt(i) != s) break;
>
 str = str.substring(0, i 1);
Retour str;
>
fonction Trim(str, s) {
Retourner LTrim(RTrim(str, s), s);
>


///Vérifiez si la chaîne est composée de chinois, d'anglais, de chiffres et de traits de soulignement
fonction chkNickName(str) {
var modèle = /^[wu4e00-u9fa5] $/gi;
Si (pattern.test(str)) {
        return true ;
>
Renvoie faux ;
>


Copier le code Le code est le suivant :

//Jugez la longueur (la longueur n'est pas limitée à 0)
String.prototype.IsLen = fonction () {
var isRightFormat = false;
var minnum = arguments[0] ? arguments[0] : 0;
var numéromax = arguments[1] ? arguments[1] : 0;
isRightFormat = (minnum == 0 && maxnum == 0 ? true : (calculate_byte(this) >= minnum && calculate_byte(this) <= maxnum ? true : false));
Retourner isRightFormat ;
>

Copier le code Le code est le suivant :

//Vérifie si la chaîne est alphanumérique _ -
String.prototype.IsStr = fonction () {
var monReg = /^[0-9a-zA-Z-_] $/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le nom d'utilisateur
String.prototype.IsUsername = function () {
var monReg = /^[0-9a-zA-Z-_]{3,50}$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le mot de passe
String.prototype.IsPassword = fonction () {
var myReg = /^[0-9a-zA-Z`~!@#$%^&*()-_ ={}[];:"'?/\]{6,}$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifie s'il s'agit d'une lettre
String.prototype.IsEn = fonction () {
var monReg = /^[a-zA-Z] $/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifiez s'il s'agit d'un caractère chinois
String.prototype.IsCn = fonction () {
var monReg = /^[u0391-uFFE5] $/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier l'e-mail
String.prototype.IsEmail = fonction () {
var monReg = /([w-.] )@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)| (([w-] .) ))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier MSN
String.prototype.IsMSN = fonction () {
var monReg = /([w-.] )@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)| (([w-] .) ))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le numéro QQ
String.prototype.IsQQ = fonction () {
var monReg = /^[1-9]d{4,10}$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier l'URL
String.prototype.IsHttpUrl = fonction () {
var myReg = /^http://[A-Za-z0-9] .[A-Za-z0-9] [/=?%-&_~`@[]': !]*([^< >""])*$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le nom de domaine
String.prototype.IsDoMainName = function () {
var monReg = /^[0-9a-zA-Z]([0-9a-zA-Z-] .){1,3}[a-zA-Z]{2,4}?$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier l'adresse IPV4
String.prototype.IsIpv4 = fonction () {
var monReg = /^(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})$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier l'adresse de l'image (les images générées dynamiquement par CGI ne sont pas prises en charge)
String.prototype.IsImgURL = fonction () {
var myReg = /^.(jpeg|jpg|gif|bmp|png|pcx|tiff|tga|lwf)$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le numéro de téléphone portable
String.prototype.IsCellPhone = fonction () {
var monReg = /^(((d{3}))|(d{3}-))?1[3,5]d{9}$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le numéro de téléphone fixe
String.prototype.IsPhone = fonction () {
var myReg = /^[ ]{0,1}(d){1,3}[ ]?([-]?((d)|[ ]){1,12}) $/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le code postal
String.prototype.IsZipCode = fonction () {
var monReg = /?[0-9]{6}/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le numéro d'identification
String.prototype.IsIdCard = fonction () {
var monReg = /(^([d]{15}|[d]{18}|[d]{17}[xX]{1})$)/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le format de date AA-MM-JJ
String.prototype.IsDateFormat = fonction () {
var monReg = /^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le format de l'heure HH:MM:SS
String.prototype.IsRangeTime = function () {
var monReg = /^(d{2}):(d{2}):(d{2})$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifier le format du montant
String.prototype.IsMoney = fonction () {
var monReg = /^[0-9]{1,8}[.]{0,1}[0-9]{0,6}$/;
Si (myReg.test(this)) renvoie vrai ;
Renvoie faux ;
>

Copier le code Le code est le suivant :

//Vérifiez le format numérique et déterminez la plage du nombre (min : valeur minimale ; max : valeur maximale.)
String.prototype.IsInt = fonction () {
var isRightFormat = false;
var minnum = arguments[0] ? arguments[0] : 0;
var numéromax = arguments[1] ? arguments[1] : 0;
var monReg = /^[- ]?d $/;
Si (myReg.test(this)) {
isRightFormat = (minnum == 0 && maxnum == 0 ? true : (this > minnum && this < maxnum ? true : false));
>
Retourner isRightFormat ;
>

Copier le code Le code est le suivant :

//Vérifier les mots-clés de recherche
String.prototype.IsSearch = fonction () {
var myReg = /^[|"'<>,.*&@#$;:!^()]/;
Si (myReg.test(this)) renvoie false ;
Renvoie vrai ;
>

Copier le code Le code est le suivant :

//js calcule avec précision la longueur de la chaîne
function calculate_byte(sTargetStr) {
var sTmpStr, sTmpChar;
var nOriginLen = 0;
var nStrLongueur = 0;

sTmpStr = new String(sTargetStr);
nOriginLen = sTmpStr.length;

pour (var i = 0; i < nOriginLen; i ) {
        sTmpChar = sTmpStr.charAt(i);

if (escape(sTmpChar).length > 4) {
nStrLongueur = 2;
            } else if (sTmpChar != 'r') {
               nStrLength ;
>
>

return nStrLength;
>

Copier le code Le code est le suivant :

//Valeur de couleur ;
String.prototype.IsColor = fonction () {
var s = arguments[0] ? arguments[0] : "";
s = s.Trim();
If (s.length != 7) return false;
Renvoie s.search(/#[a-fA-F0-9]{6}/) != -1;
>

Copier le code Le code est le suivant :

//js日期格式化
Date.prototype.format = fonction (format) {
    var o = {
        "M : this.getMonth() 1, //mois
        "d " : this.getDate(), //jour
        "h : this.getHours(), //heure
        "m : this.getMinutes(), //minute
        "s : this.getSeconds(), //seconde
        "q : Math.floor((this.getMonth() 3) / 3), //trimestre
        "S": this.getMilliseconds() //milliseconde
    >

    if (/(y )/.test(format)) {
        format = format.replace(RegExp.$1, (this.getFullYear() "").substr(4 - RegExp.$1.length));
    >

    pour (var k in o) {
        if (new RegExp("(" k ")").test(format)) {
            format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" o[k]).substr(("" o[k]).length));
        >
    >
    format de retour ;
>

fonction HasChinese(value) {
    if (/^[u4e00-u9fa5] $/.test(value)) {
        renvoie vrai ;
    >
    retourner faux ;
>

fonction ToDate(dateStr) {
    var dStr = dateStr.toString();
    dateStr = dStr.replaceAll("-", "/");

    renvoie une nouvelle Date(Date.parse(dateStr));
>

复制代码 代码如下 :

//是否ID列表
String.prototype.IsIdList = fonction(s) {
    si (s == non défini) {
        s = ",";
    >
    var arr = this.split(s);
    pour (var i = 0; i < arr.length; i ) {
        if (isNaN(parseInt(arr[i]))) { return false; >
    >
    renvoie vrai ;
>

复制代码 代码如下 :

//获取事件触发的对象
fonction getEventTarget(e) {
    e = e || window.event;
    retourner e.target || e.srcElement;

代码都很简洁,简单,功能却都很实用,有需要的小伙伴参考下

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn