JavaScript est un langage de navigateur, donc pas tousla tâche a besoin de ses propres variables, tableaux et objets. Dans de nombreux cas, il suffit tout simplement d'utiliser le DOM (Document Object Model). Mais même dans de tels cas, la description correcte des données utilisées rend toujours le programme plus parfait, plus pratique à utiliser et à affiner ultérieurement.
Les mots comptent, mais quand on nomme quelque chose dans le programmece qui est susceptible d'utilisation et de modification, il convient de se limiter aux mots "données" et "variables". Eh bien, ce qu'ils seront - JavaScript Array, Object ou simplement Integer - dépend de la tâche, plus précisément de l'endroit spécifique qu'elle contient.
Code et logique de données
Les programmeurs sont habitués à manipuler des données.Il y avait et à ce jour il y a des variables dans un large éventail de représentations (chaînes, symboles, nombres, dates ...), en règle générale, les tableaux et (pour les deux dernières décennies) les objets étaient positionnés séparément.
À un moment donné, une frappe forteles données sont devenues une relique, et maintenant, dans toutes les langues modernes, les données peuvent changer non seulement le contenu, mais aussi le type. Bon ou mauvais, on le verra, mais une frappe forte a ses caractéristiques positives. Cependant, si cela s'est produit, alors pourquoi ne pas « rattyper » tout le processus ?
Sémantiquement, c'est-à-dire en dehorssyntaxe, toute variable compte. Et cela change dans n'importe quel état des choses. La séquence de changements est déjà une quantité, qui en termes JavaScript est un tableau d'éléments.
En d'autres termes, si le programmeur décidait de ne pas ajoutervaleurs au type d'une variable et mettre sur le langage le soin de la conversion correcte et opportune des types, alors pourquoi ne pas simplifier du tout: il n'y a que des données, eh bien, ce qu'elles seront au point d'application - un nombre, chaîne, tableau ou objet - c'est au code de décider. Plus juste encore : le donné devrait en lui-même déterminer ce qu'on peut en faire et comment exactement.
Données et syntaxe simples
Les variables simples sont de divers types. Les conversions de type sont effectuées automatiquement lorsque le besoin s'en fait sentir.
Cet exemple décrit une variable simple s, dansqui sera le résultat du travail avec JavaScript Array aCheck. La variable i est décrite directement dans la boucle aCheck. Ici, les éléments du tableau (créés à l'aide de la construction push JavaScript Array) sont trois types de valeurs différents. La première boucle imprime les noms des types dans la chaîne s, la seconde — les valeurs réelles. La conversion de type se fait automatiquement.
À propos du nombre d'éléments dans les tableaux
En JavaScript, Array n'est pas un tableau associatif. Les éléments sont accessibles par touches numériques, le nombre maximum d'éléments est de 232, mais vous ne devriez pas expérimenter avec les quantités limites d'éléments.
Un bon algorithme a toujours une quantité de données observable, et la construction de longueur de tableau JavaSscript a été introduite dans la syntaxe pas du tout pour contrôler la taille du tableau dans le contexte de son contenu.
La valeur aCheck.la longueur ne sera pas toujours le nombre réel d'éléments. En JavaScript, un Array peut contenir autant de choses et ce qui y a été envoyé, mais il faut parfois travailler dur pour savoir combien.
Dans cet exemple, l'expression aCheck [5] incrémente le tableau à six éléments. Les espoirs que la fonction de longueur donnera la valeur 4 ne sont pas justifiés.
Tableaux associatifs
Formellement, JavaScript Array ne peut être que ordinaire, c'est-à-dire que les éléments sont accessibles par des indices numériques. Cependant, en réalité, vous pouvez utiliser des idées associatives.
Une tâche très simple et banale de trier les chaînesles tableaux par colonnes peuvent être résolus via un tableau associatif. Un point dans un cercle à côté d'un nom de colonne signifie qu'il n'y a pas de tri, une flèche vers le haut - par ordre décroissant et une flèche vers le bas - par ordre croissant. Cliquer sur une colonne change de direction (implémentation JavaScript : Sort Array).
Dans cet exemple, le tableau cSortCols est formésens de tri pour chaque colonne (S, C, W, ...). Valeurs de direction uniquement u, d. Dans la construction for in, tout est cousu sur une seule ligne (à la fois le code de colonne et le sens de tri). Cette boucle parcourt tous les éléments du tableau et il n'est pas nécessaire d'utiliser la fonction JavaScript Array length.
Création et tri de tableaux JavaScript
Une bonne pratique consiste à écrire "var xMass = [];" ou alors"var yArr = {};". Dans le premier cas, un tableau ordinaire sera défini, dans le second cas - un tableau associatif. Vous pouvez également utiliser la variante JavaScript New Array (), mais cette construction est généralement utilisée à d'autres fins, principalement pour travailler avec des objets.
Le tableau créé peut être rempli immédiatementvariables, mais, en règle générale, le remplissage et la manipulation réels du tableau en dynamique, lors de l'exécution du programme. Si vous avez besoin de trier, vous pouvez utiliser la construction JavaScript Sort Array, qui n'est pas flexible, mais vous permet de contrôler le processus via sa propre fonction.
Appel : arr.sort() trie dans l'ordre des caractères ASCII. Fonction inverse - permutations d'éléments : arr.reverse(). Cette fonction inverse l'ordre des éléments du tableau.
Dans les deux cas, le mot arr représente un tableau.Dans le premier cas, vous pouvez utiliser votre propre fonction de tri, c'est-à-dire qu'appeler arr.sort (myfunc (a, b)) appellera votre propre fonction myfuct, qui devrait renvoyer le résultat en fonction des données : a et b. Si le premier est inférieur au second, alors -1, si vice versa, alors 1, et si a = b, alors 0. Ici le critère de comparaison est défini par le programmeur dans la fonction myfunc.
Idée d'élément actif
Une fonction appelée pendant le processus de tri peuteffectuer diverses actions. Du point de vue de la construction dans laquelle il est appliqué, il n'a pas à répondre aux paramètres d'entrée, et son résultat n'est pas seulement les trois nombres -1, 1 et 0. Lorsqu'il est appliqué dans un tableau cycliquement à chaque élément, il peut reconstruire le tableau.
Si nous imaginons qu'un tableau est une certaine signification, une certaine structure de données, alors JavaScript Array se transforme en une variable avec un contenu modifiable.
Si l'on se base sur l'utilisation du premier oule dernier élément du tableau comme son contenu, alors l'exécution de la fonction de tri peut transformer le tableau de sorte que le premier / dernier élément soit un élément différent, comme l'exigent les conditions du problème.
Une telle idée peut permettre de reconstruire l'algorithme.solutions de telle manière, en particulier, qu'il n'y ait pas besoin d'utiliser les constructions if () {} else {} et switch () {case "": ...; Cas "": ...; ...}.
En manipulant le contenu d'un tableau, vous pouvez déplacer des éléments à l'intérieur, modifiant ainsi la fonctionnalité externe que vous pouvez obtenir via le premier ou le dernier élément.
Tableau JavaScript : utilisation illogique
Toute langue est bonne car elle permet non seulementmodifier la structure et le contenu des données, mais aussi le code lui-même. L'idée de considérer une variable comme une abstraction, c'est-à-dire dans un premier temps sans prévoir son statut typique, ouvre de nouveaux horizons.
Partant d'une abstraction, une variable, un tableau ou un objet permet de représenter le processus de traitement des données en fonction de ces données, et en dynamique.
Par exemple, en lisant le texte, vous pouvez décrire le"texte", qui sera divisé en phrases - le critère "point" (en contexte, c'est-à-dire en tenant compte de la syntaxe acceptée des phrases). Les phrases seront décomposées en phrases (en contexte, virgule et syntaxe correspondante). D'autres mots et lettres.
Résultat:vous pouvez travailler au niveau des textes, des phrases, des mots. A chaque niveau, vous pouvez créer des fonctions "unicité", qui vous permettront de rechercher des similaires ou similaires. Vous pouvez créer des fonctions pour appliquer des phrases, des phrases à d'autres données.
La programmation moderne n'est plus un dogme, maisle fait que les constructions syntaxiques créées au cours des dernières décennies et l'expérience accumulée ouvrent de nouveaux horizons non prévus par les développeurs de langages reste à découvrir et à utiliser.