Maison > interface Web > js tutoriel > Résumé des astuces JavaScript courantes_astuces Javascript

Résumé des astuces JavaScript courantes_astuces Javascript

WBOY
Libérer: 2016-05-16 16:23:41
original
1177 Les gens l'ont consulté

Avant-propos

Résumez le sucre de syntaxe JavaScript que j'ai rencontré récemment et partagez-le avec tout le monde.

Chaque bonbon contient des instructions détaillées et des exemples, je n'entrerai donc pas dans les détails.

Vérification précise du type

Copier le code Le code est le suivant :

/*
* @fonction :
* Exemple de vérification de type
* Grâce à cette méthode, vous pouvez vérifier si une variable est le type de données attendu
* @params :
* variable obj à vérifier, obligatoire
* Liste blanche des types de données de configuration, facultatif, tous les types par défaut
* @retour :
* vrai signifie que le contrôle a réussi, faux signifie qu'il a échoué
* @exemples :
* typeCheck("str"); //retourne vrai
* typeCheck({},{"[object Array]": 1}); //return false
*/
fonction typeCheck(obj,config){
var hasOp = Objet.prototype.hasOwnProperty,
        toStr = Object.prototype.toString,
​​​​ _config = configuration || {
"[objet Objet]": 1,
"[Tableau d'objets]": 1,
"[objet Regex]": 1,
"[chaîne d'objet]": 1,
"[Numéro d'objet]": 1,
"[objet booléen]": 1,
"[Fonction objet]": 1,
"[objet non défini]": 1,
"[objet Null]": 1
};

Retour hasOp.call(_config,toStr.call(obj));
>

Une manière élégante d'ajouter des prototypes

Copier le code Le code est le suivant :

/*
* @description :
* Une façon élégante d'ajouter des prototypes
* Exécutez simplement cet extrait de code dans le domaine public
*/
if(typeof Function.prototype.method !== "function") {
Function.prototype.method = function(nom,fn){
This.prototype[nom] = fn;
Renvoyez ceci ;
};
>
/*
* Exemple d'utilisation
*/
//Définir une "classe de test"
fonction testFn(){
>
//Ajouter des méthodes membres de la classe de test
testFn.method("ajouter",fonction(a,b){
Renvoyer un b ;
}).method("sub",function(a,b){
Retourner a - b ;
});
//Instanciation
var testObj = new testFn();
//Appeler la méthode membre
testObj.add(1,5); //retour 6
testObj.sub(7,2); //retour 5

Créez rapidement un espace de noms

Copier le code Le code est le suivant :

/*
* @fonction :
* Créer un espace de noms
* @params :
* ex expression d'espace de noms, par exemple : NSROOT.service.impl
* Cette expression doit être écrite à partir du nœud racine
* @retour :
* Renvoie un Objet, cet Objet est le dernier nœud de l'expression
* @autres :
* Si vous n'aimez pas le nom NSROOT, recherchez et remplacez simplement
*/
var NSROOT = NSROOT || {};
NSROOT.namespace = fonction(ex){
var _ex = ex || ​ ​ nsArray = _ex.split("."),
parentNode = NSROOT,
​​​ _s = "",
je = 0;
//Déterminez si l'espace de noms commence à partir du nœud racine
if(nsArray[0] !== "NSROOT"){
          throw("L'espace de noms doit commencer à partir du nœud racine !");
>
//Supprimer le nœud racine
nsArray = nsArray.slice(1);
pour(i = 0;i _s = nsArray[i];
Si(parentNode[_s] === non défini){
        parentNode[_s] = {};
>
parentNode = parentNode[_s];
>
Renvoie parentNode;
};
/*
* Exemple d'utilisation
*/
//Créer un nouvel espace de noms
var impl = NSROOT.namespace("NSROOT.service.impl");
alert(impl === NSROOT.service.impl); //return true
//Créez un espace de noms existant sans écraser les données d'origine
NSROOT.namespace("NSROOT.service.impl");
alert(impl === NSROOT.service.impl); //return true

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal