JavaScript a une mauvaise réputation sur Internet, mais il est difficile pour vous de trouver une autre langue comme si elle est si dynamique, si largement utilisée, si enracinée dans nos vies. Son seuil d'apprentissage bas a fait que de nombreuses personnes l'appellent une langue de script préscolaire. Une autre chose qui fait rire les gens est le concept de langage dynamique qui utilise des normes élevées de types de données statiques. En fait, vous et JavaScript avez pris la mauvaise position, et maintenant vous mettez JavaScript très en colère. Voici cinq raisons pour lesquelles votre technologie JavaScript est terrible.
1. Vous n'utilisez pas d'espace de noms.
Vous souvenez-vous encore qu'à l'université, les enseignants vous ont dit de ne pas utiliser de variables mondiales dans vos devoirs? L'utilisation des variables globales en JavaScript ne fait pas exception. Si vous ne faites pas attention, vous deviendrez chaotique et il y a des scripts et des bibliothèques de script qui se trouvent dans tous les coins d'Internet. Si vous nommez un chargeur variable (), vous causez délibérément des problèmes. Si vous surchargez une fonction inconsciemment, JavaScript ne vous rappellera pas du tout. Vous appelez également cela un langage de programmation préscolaire, rappelez-vous? Ce que je vais dire, c'est que vous devez savoir ce qui se passe après avoir fait cela.
La copie de code est la suivante:
fonction derp () {alert ("one"); }
fonction derp () {alert ("deux"); }
Derp ();
"Deux", la réponse est "deux". Ce n'est pas nécessairement le cas, il peut en être "un". Il est donc facile de mettre tout votre code dans votre propre espace de noms. Voici un moyen simple de définir votre propre espace de noms.
La copie de code est la suivante:
var foospace = {};
foospace.derp = function () {alert ("one"); }
fonction derp () {alert ("deux"); }
foospace.derp ();
2. Vous faites des astuces, vous définissez les variables une par une.
Votre utilisation d'une combinaison inexplicable de nombres comme noms de variables est une fin perdante. La recherche d'une variable de caractère sans aucun sens dans un bloc de code à 40 lignes est un cauchemar pour la maintenance. Mélanger la première déclaration d'une variable dans un bloc de code de 40 lignes est également un cauchemar. Même lorsque vous rencontrez une telle variable vous-même, vous ne pouvez pas vous empêcher de vous demander: "Où est-ce défini?", Puis utilisez rapidement la combinaison Ctrl + F pour trouver la définition initiale de cette variable dans le code source. Non, ne faites pas cela, au contraire, c'est un abus de JavaScript et une approche stupide. Vous devez toujours définir la variable en haut de son champ d'utilisation. On ne peut pas dire que parce que ce n'est pas nécessaire, vous ne pouvez pas le faire.
La copie de code est la suivante:
fonction(){
var a, // description
B; //description
//processus…
}
3. Vous ne comprenez pas la portée variable de JavaScript.
Vous êtes un programmeur de génie, vous mangez C ++ et tirez la liste. Vous savez quelles sont les gammes de variables, vous avez un contrôle complet sur vos variables et vous les regardez comme l'empereur suprême. Cependant, JavaScript tire une merde dans votre café et rit sans cesse.
La copie de code est la suivante:
var herp = ”one”;
{
var herp = ”deux”;
}
alerte (Herpe);
Dans ce cas, vous obtenez Herp n'est pas "un", mais "deux". La plage valide de la variable de JavaScript ne dépend pas des blocs de code comme les autres langues. Les plages de variables JavaScript sont basées sur des fonctions. Chaque fonction a sa propre plage variable, et JavaScript est cool de cette manière, ignorant la portée enveloppée dans des accolades sans signification. En fait, JavaScript est si cool que vous pouvez même transmettre des lunettes variables comme des espaces de noms ou des variables.
4. Vous pensez que les fonctionnalités orientées objet de JavaScript sont juste greffées.
JavaScript, depuis sa création, a été une langue orientée objet. Tout est un objet en javascript, tout! Même les symboles littéraux tels que les nombres et les caractères peuvent être convertis en objets via son propre constructeur inhérent. Par rapport à d'autres langages orientés objet, JavaScript est différent en ce qu'il n'a pas de classes. Les objets JavaScript sont définis comme des fonctions, et même les fonctions elles-mêmes sont des objets. JavaScript a une propriété appelée prototype. Cette propriété est intégrée à tous les objets. Vous pouvez modifier la construction de l'objet, modifier l'objet, ajouter plus de variables et plus de fonctions.
La copie de code est la suivante:
var derp; // tiendra une instance HERP
var herp = function () {
this.opinion = ”javascript est plus cool que basique.»;
}
Herp.prototype.speak = function () {alert (this.opinion); }
var derp = new Herp ();
Derp.speak ();
Si cela ne semble avoir rien à voir avec vous, je voudrais vous présenter mon bon ami Google, ce qui est bon pour aider les gens à apprendre les connaissances. Orienté objet est un grand sujet pour mon article court et basse-position.
5. Lorsque vous utilisez le "nouveau" mot-clé, c'est comme un aveugle et un cheval aveugle.
JavaScript doit être votre première petite amie d'amour parce que vous semblez perdus. Si vous voulez plaire à JavaScript comme une vraie personne, vous devez comprendre les symboles d'objet. Vous n'avez essentiellement pas besoin d'utiliser le nouveau mot clé, sauf lorsque vous devez instancier un objet, ou dans de rares cas où les données sont chargées de manière retardée. L'attribution d'un grand nombre de nouvelles adresses variables dans JavaScript est une opération très lente, et pour des raisons d'efficacité, vous devez toujours utiliser des symboles d'objet.
La copie de code est la suivante:
var droite = [1, 2, 3];
var tortway = nouveau tableau (1, 2, 3);
Vous souvenez-vous que j'ai dit que la plage de variables de JavaScript est basée sur des fonctions? Vous souvenez-vous que quelqu'un a dit que les objets JavaScript sont définis comme des fonctions? Si vous n'utilisez pas le nouveau mot-clé pour déclarer un objet, vous ferez de cet objet une portée globale. Par conséquent, c'est une bonne habitude d'utiliser toujours le nouveau mot-clé pour déclarer des objets.
La copie de code est la suivante:
var derp = ”one”;
var herp = function () {
this.derp = ”deux”;
}
var foo = herp ();
alerte (derp);
Si vous écrivez de cette façon, JavaScript s'en fiche, et la réponse que vous apparaissez vraiment est "deux"! Il existe de nombreuses façons d'empêcher les objets de faire un tel comportement, qui peuvent être utilisés pour utiliser l'instance OFF, mais une meilleure façon consiste à utiliser correctement le nouveau mot-clé, ce qui le rend plus professionnel.
Vous savez maintenant que votre code JavaScript est terrible, et si vous vous souvenez de ce qui est dit ci-dessus, votre code s'améliorera. J'aime utiliser 3 touches d'onglet pour mettre le code, j'aime utiliser des soulignements pour connecter des mots, j'aime capitaliser la lettre initiale de la fonction pour indiquer qu'il s'agit d'un objet. Bien sûr, c'est une autre discussion. Il existe de nombreuses raisons pour lesquelles votre code JavaScript est mauvais, tout comme j'ai beaucoup de compétences, afin que je puisse exprimer vos opinions, votre soutien, votre objection et me donner quelques conseils dans les commentaires.
Merci beaucoup à Rogeliorv et Jared Wein pour avoir signalé les erreurs du point 5. Vous êtes très fort.